fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x40020, 0x100fe0}, {&(0x7f0000077da0)="eb52904e5446532020202000080200000000000000f8000000000000000000000000000080008000ff030000000000000400000000000000ff00000000000000f500000001000000aa1cb4684d356101000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f74206120626f6f7461626c65206469736b2e20506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0, 0x1ff800}, {&(0x7f0000077e80)="00000000000000000000000000000000000000000000000000000000000055aa", 0x20, 0x1ff9e0}], 0x0, &(0x7f00000021c0)=ANY=[@ANYBLOB='\x00\x00\t\x00\x00'], 0x1) 00:26:05 executing program 5: r0 = perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r1 = socket$inet_smc(0x2b, 0x1, 0x0) perf_event_open(&(0x7f0000000040)={0x2, 0x80, 0x1, 0x0, 0x5, 0x7, 0x0, 0x6, 0x44100, 0xef0ffa2b1342aa1c, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x8, 0x2, @perf_bp={&(0x7f0000000000), 0x6}, 0x1806, 0x5a7d, 0x4, 0x5, 0x1, 0x84, 0x0, 0x0, 0x9, 0x0, 0x8000000000000000}, 0xffffffffffffffff, 0x3, 0xffffffffffffffff, 0x0) r2 = syz_clone(0x80000080, &(0x7f00000000c0)="625e18a5dcc5367ef0fa08f506f9eced0c876dd90685128681dec34e90652c3bd74d7d7f2314c755bdc04612c132b44b69a93781d7b4092e9233b377579c5eaf384222c5ba7aa420ed02d11d7a082de2a4bb3db1d292d21422d49a5f0adac3fd927971cde0938087d52637f03077d0a2494483a2d1f834d282342a4edf84d3e94fdb8d4f34453adb063ee34c7cbbe1199acbbdd66f10b4f7283db7fb8c61ce9c0aadbb7cecc869485d0bf86da24836a4fa2428a8084aed863fbf8e8253ce9298e82b150f9051bcba965754201af1f9e08d77bfe62c3a7aba8bb3e3c8299479f5c0767828501a51f7f335ed7fc03f215da69f1e1906", 0xf5, &(0x7f00000001c0), &(0x7f0000000200), &(0x7f00000003c0)="7474c7013ef3690755072efc35bb053b922f04db4a2ae4427a3ce3e4b1528b28cef4c93fdb453ee84a02b945df7fb9df52128ca5a444aebda5200f31a8ce4c89cd4186fd6675afae0960d36b6ff49562cdb75d0ca7a7812364661d486e477b8f3890518d23d80ff172306b6760069032fcdcab082e58ab174010a8ab3717ac23f0ae8f21b66bb39734790463362e3818b4f39366e5c8b8f7219b7db982ff3207d546167ae196fcdc63b6c63015c756501f10b103eede77b99e02008ab127244ef52bbe03f152708253dcc75dc9c21a0dabb1226bd82dab0d8535d0cd0df25f8ed727ca3c2381b30b1265ff86589d7aa72917bf4d339b3b13bab0a1ae6c860bc3cdd51225c238f7d19471066581c4df63abf785a3ba0e6a3218d1d86c74cfcd27cd419e35d87f1ccbb54ebc7377de76134d0cb7045e49f8c37c8d2adaf4c12a3b4e45ea9ae8e9eeef8c63c49f14109ef2d21560129c5b6424b04bfcede0d753becb5c36c58d85bf7686c37ec224347dfa7f329846941cc5fdfef99d456de51817b3daa0f9999485e7ef8e8d27cf4bde01e0b1f4a1e2e91fff01deb0853aea3866aae7a60bbd8226672f64bd4374fca452f4d81834f4eac4df811ff37703a8996a72f4aa110dc8a2744c1774cd6b45a7ab231c63ae34682313cc9760692ec2f7ed90dfdc704b5d00955d61c32002532d3a94150a16b9df63cca6de22d5f6685171cf67cebada946ad81d676b1d9b34ef5320d9cd80c70a6f9cccb899ae6eccb266a26b8607f688a0021a44e6e8fdc58c87bd2595be50c979fc592d0da2a0b158309e01f07f2ef3c3ee84f206532a0f13212f8333695b270a4b952b81dda5a367126699169f050562b92cdf4832a9e512e5edcf3780f072c83ab269a83015b05d4bee4971738cd2051000b83f7dc527c46b2a4080453e47512a07febf35f61bd5ac4267af5b1692972960d549207ad04d061d08f34eb23fa58bce4cac2c8af08cdce345653b0d04dc360fec86537e94da96471dfcd969b9dfe384f4c2abe517689859b33e1a19e7ff578dd0fb969867daabe02346c13903542230da1a451f345b0281ab90ecadb5bcc6826d0f389c4cb87182816abd99514e08da1df21d45bf82e57fdeddbed3388cc2789315637189d95d17c5d65e35a1962638ea12f4da5d5364ae8761b94003d58c6158b4653f1a5982475d4f231b69067d9e25a172d935d2e0f642a8f6a253f99ebc9c9103a28406120aeb3cd0ae70377b8a054cbc02760de0278b050f000c3e7d886edc1f0e8cc3aa58a54ed0bd8596819d2b92333fef6213b114db682e2c36de8dcb9dd346940ea7c2a3794bb67ab648745cc22af7cd8e186254ce81d371b52b4f4d0fd06008ea0b0e7b8bf958d202da2fad32f43897ab8e70e717956eeea1ce71121c91f6c41848494e54210339e700363d563680d1ce8592872e04445f6a8386ed1e8f42c3864fda9adf85d772953de676e512e036b72b652d9278863bc69a1f4feb5d62ec6ba602e28c1126f74c595ad8fd44266876693df33622bb3636f387fb0b14480797e87ab99e1a99a3cf7c6a842eaace918c29ea161829b7864123e50a433ca6c889f3b9c4c3700011efc557564a00cf54eaa97e90f333594e7352c071ed49828efeca05bd4a56d97a0897ab96107cd167bc61ac48257cc381731a73a37ebd4352119296e57e37903977cc0a0fa94377ada77541d8427e511934e328bc8f6c100ab37be79ad5bff49cab6894f77d2580bd54d85480ef17cc5de202936e2bf71bfd03d5cef12c55ddbf18a8cd304713adcc715baff8aa6ab39b6347d67f5ed106cdd7ec8e86d5e143e9eb39d0331aa87fcea06a9540d5ec89b3a8a52a6cc963a7baccfe486207fc32661e4a8fe2fbd174ca85c55940fca6f9264fd929566e96ab0014578d84b56f25105866cea2402a48a30a19930aa64cd0556a52e979bccbf787020eaa55d3b27b058e1c41d72788fc28ae08d1978296a88dd468586cbabc8aa9b2026f54ef28d5f075ab3dd265c8a6d5f2ac5266768a59ae066af05ffb50962aea03bffb6c41e6caff123f141657f2163208d53fdb208a89d834699b134bc77dc0b1617ea9f0ef8994bfe8747991e31deada06eda9d6cb321a34d671168cb14468ad7ea250ad9c62de802d25a26ae77e10b4eaaa595b82149da5746b048ea8bc7333fe294460e56ae4d8a499a9569e94e53a405c08a953f9153a86df037bb169d9aee621392ebf8b8ed7525d6102fa52483de660f875ead434905cac74f2958d13ce14ad6100e0e0278517808cef677985a6dfbc88f9cf9093df54ec3183eecff2e5b3738f7dbe659350c8ce8c9c02aeb2673c3cce5aed41a0ae6c2d35897567cfb1eb5ea8a98ef5e62f4055b1e0250112eff6a577ab5e0ce3fca648e6add03ebe6c66f181102e292b71ee1f0acae12253d51ad82523c728eee41c8251bc207c09eccc98afdc31794e2f8ab39ce29fb2273e4254b1033f62db5430d6befb1fe1e8ef9751438250d4cac5cae7ede7f36ea514f6a41f142e107c5224ace3e5bcf911a79a68e1ea94f9e0a7b51eae7b3b5031b50c41a8957a194d0c943305ba61510fcdd4161bfc45ff61aa310305843805422e2ed639068ba28e21467d547d00fe28172e13b6d534037d02c0a4bf22be06e8c3c7be18159c4328fd05755193bc3f65132db49dcce3bac964126f95b0518e39882589601930670abebd92313356cfadfbca433901c00c8b309167feaa54fa2d28f1e805a2cfddce1085afeb5ce039589f73ab149cbbb773b29ee7722e50db5852770c3e5166987c14eaaaea0152e431fd2aee8aa02955452fbc430a4de5ce85db834f2f586a06e1a79c4470268b52b59693317c87f3b40e1827959f65d1128e3b560edc9d31573eba25c6378412de72651062e506de2e22bb673a03d6fbef02e6e775886c736c2d4a43c86976f9fc029233b631971f0ed836810ec5e8d74c2b16bb7dede72e5f33381b4890b6c8a1b2c1d17f83d6686a23bc47e9e83cfb11b313c2886e38e9d2a9f16dc43268df323ae7ec0c1efe7f801bcd96afccef27a279a670365ef1c5f9f4504316ea461a2b3d1fa95fb720a5be3f5d1b1e942c869f0c935bc2b824d5f59ce8dc0659943767c941d653e9e682f662e590129e53d666e0375bfca5e32d4f97c79fcf6a61fd43c00bc50789fdb7f9e945e37746ecb0044b6d3af84877e1c904b15cf2cd7fb5b480703a2cf8bd4d513522fc4d2595289e41ab3b0adcdb93d7b0b4600d426fa48f7ff42cd71e0ac65dc92dda2f9019a665b38c3d3585ac2fcc133f3eb8f6235205dbce7f9651bae5c29cb8fee0ab0929203a44e7e5b971fafa63080d4009e5cabf3bc368fe003ebbf925fe1f083083246eb6a865f093b2e6e5bc47682acea4360db84d7ba3720331ca7a5e101c406eb811e7462894a29917cd8db0019b692d41376f4dbd8c33a3f026a32654499b234c5c596bf5e26542c334df85db709c952bafb73ba71197ed2752f75d8d9c29179b202a90ffef688529abf3675be1a55b923b7a0decf9c8899df7b3aa373480bcef37cbe6952621ba64c2b7a7d715ab9dbb5d0016b174f908846df995195b9c227ae2dd71583fcec89a1c61bad2e8aa05ce803eb55750a7989306894f9cd33c934bfce1f6016b2984a34372b4d7c430e3fdd863dd7ac7d5af0274fbcf834806dbf2d7e05f1eaeefbbc0c76938fc6e06365bdeb7ce76646cad2508138b9eaca6daf758fb92d1449c3295fab34ac4578c426296d3c60b4af771e009a124826b00ca9338f39fc2040fe66f5f14be277a92396abaa31bfc592bc1a7f0030fbec68440796c4e2bcbaa736203245ebe6ee4ff63c4ff1d2beb79b8ceade6f0276ec3ac97a6dec279c4164a81c0d1446522bf04084ad507179d1eede8064578891628d1cdfd0ce2ea444aea8e829247f7c0217b9ae72c5774454c47c678a31fd2c66c42313dc8f15bd86998cffd2156d69c72f0d4894323b4c5422551befc02f2cc703c806caeb89ab2fd33d4e72ace281f06343ad60b08a7fe8b68e07e8d88552b1eb1e1e749459ed6c23fb778072658c250c8bc9072471a8b166b3d0cf6e9668521032fd59d89f3d9533fff84d6bd7498e11c4a6a764d286af04f638f5f288e79557133a8152311fb90f7263df348dfdd798f52cf6f07723613bef5a80b17129ed283bb5aa5ff8b00b5cb26bc0bf91050c8ab4e00b530b72acce82f5b28227ec79e6824d17aa8831c7e2b9fb36a2e58513d68e3a55e2b3d1d36197b4c3b2f5481622ebd19311c30ab3fb705b594f679257f5512056d599f7677eedbb426b99b405b44c8f741984d57ab8f0afa5829fb4262016de1f404996d6f57bf21f57ee373c58a8bf4b4d423a32ec74ffcb2645dd471cccfbce6bca5937a86d1cb9ad4055d9fc22371a1f19dce1f45cda23534606ad6bc6d3fe75ff712d0cbc424729c3fb45e72439f6de4a05a5ade06596eb0bb4f2f27d2af1353e04380ebd3060e255947d47467474b6d4e939375f3a60113ff52aa386e0b0bf39dd8d040fa9b38c3cc28e355822ab0cf252125cf7fbc12431481a509df9a117375ef6d63f02ecf9698bdf6a3a3a6fb4802fbc6fe7e2a0f72e6d654e1cabba540b3cd13ef0ca9548eb0c45207fc1b98feed412d1d88db60f957ce149b9877bd4d188ad7005ff5b9a3b53fa9c0cf7f53982549ead9f1ff13e4278040bf08c7156c83c60f793cf1eb7f97bfeffaa74ba36ec8afb8f11790655aa0a277cdd461fccb71419016ce95743c7b86a53fc9db9ed100ef7e08096413929526d93aaa50c91637ea15e6be71c108faccac08fa3631433761aa9fc9e57b4939b2a433fc87c321aae280ab9d035b607d2c8baf948068ad05de7755d3fdd43744607b0f4a734ff36cd9fc73f3802e573e1e048b20b851aaca601888b801c191851cf1a0e5f572ca5b3b8c62dc75a678c93684d4de7d23054dc82f6de7c7eb432f79d9400d19f323b2f24b298edd529deb3c478889dfdeb63b44c53a2cfff2336b2a54a4d76b220b35010022c594f273982952d0f53d76484dce55fdbc6befc9f37debf8c185af0bc2f1321934192192acc6e86591836f988801f2af2ca71f44d0d527d29f0676e18bffc8343d53c0badc02d135e7057d2d77b0f995cc628bee61fbdcb84437353d4877dd59bd301daed2f16ba132ece8166de2791fe1169abd4a5cce19e9ef3acab1a7b86ac1be635ebcfe3c2f28b15be6c5d8aad0a74f67b934eff95a6c7a3c0d40806549216ed2d994e4239f80ec65edc18b1fca1529b48ec115db71ca071849bc9b2cdcad2b9e0145e38f343f53d91225b51a92bc4a2662c8f95e5684f1d00449ceb40273f5ed458a04ed4088588742b745673ecf90f052ef9674b69495d37c8f0c84bfd565c2be5b4f7fd6cf873b482c5ad180dfd8d807f43e32326a07b1ec37bb31462c8c028787ea208e9ebccdb20688f0b044438b076800a7b22036c322669cf1fe588035d00823dd23ee37056423b81c500f9e4c1788f09e69aca45295b74eb1588b8506402e0bbbab3798cf5a873251ce58d115452f12b0746947586cdd7d5bb610cc96327c3a5675658d5d03796999d0fb2719040134cb1091247ccd2855ef78651c8be23fda2ec3360a4c3dfdbf896fae340068006e1fcdef49029cd7d672dd3bd731af5b6e1dd5a8fc4b4faa673bf5c12874d7b3ea178bbb027583f5a560b79617aaa38e54a9f2d7ed9ed6e2c0238700482c32a5061338b4d74bf31cb3b95bbefee72f70f421946ee53f9ddd") r3 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r3, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) setsockopt$inet_tcp_int(r3, 0x6, 0x22, &(0x7f0000000280)=0x3, 0x4) syz_open_procfs(r2, &(0x7f0000000240)='projid_map\x00') dup3(r0, r1, 0x0) perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) (async) socket$inet_smc(0x2b, 0x1, 0x0) (async) perf_event_open(&(0x7f0000000040)={0x2, 0x80, 0x1, 0x0, 0x5, 0x7, 0x0, 0x6, 0x44100, 0xef0ffa2b1342aa1c, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x8, 0x2, @perf_bp={&(0x7f0000000000), 0x6}, 0x1806, 0x5a7d, 0x4, 0x5, 0x1, 0x84, 0x0, 0x0, 0x9, 0x0, 0x8000000000000000}, 0xffffffffffffffff, 0x3, 0xffffffffffffffff, 0x0) (async) syz_clone(0x80000080, &(0x7f00000000c0)="625e18a5dcc5367ef0fa08f506f9eced0c876dd90685128681dec34e90652c3bd74d7d7f2314c755bdc04612c132b44b69a93781d7b4092e9233b377579c5eaf384222c5ba7aa420ed02d11d7a082de2a4bb3db1d292d21422d49a5f0adac3fd927971cde0938087d52637f03077d0a2494483a2d1f834d282342a4edf84d3e94fdb8d4f34453adb063ee34c7cbbe1199acbbdd66f10b4f7283db7fb8c61ce9c0aadbb7cecc869485d0bf86da24836a4fa2428a8084aed863fbf8e8253ce9298e82b150f9051bcba965754201af1f9e08d77bfe62c3a7aba8bb3e3c8299479f5c0767828501a51f7f335ed7fc03f215da69f1e1906", 0xf5, &(0x7f00000001c0), &(0x7f0000000200), &(0x7f00000003c0)="7474c7013ef3690755072efc35bb053b922f04db4a2ae4427a3ce3e4b1528b28cef4c93fdb453ee84a02b945df7fb9df52128ca5a444aebda5200f31a8ce4c89cd4186fd6675afae0960d36b6ff49562cdb75d0ca7a7812364661d486e477b8f3890518d23d80ff172306b6760069032fcdcab082e58ab174010a8ab3717ac23f0ae8f21b66bb39734790463362e3818b4f39366e5c8b8f7219b7db982ff3207d546167ae196fcdc63b6c63015c756501f10b103eede77b99e02008ab127244ef52bbe03f152708253dcc75dc9c21a0dabb1226bd82dab0d8535d0cd0df25f8ed727ca3c2381b30b1265ff86589d7aa72917bf4d339b3b13bab0a1ae6c860bc3cdd51225c238f7d19471066581c4df63abf785a3ba0e6a3218d1d86c74cfcd27cd419e35d87f1ccbb54ebc7377de76134d0cb7045e49f8c37c8d2adaf4c12a3b4e45ea9ae8e9eeef8c63c49f14109ef2d21560129c5b6424b04bfcede0d753becb5c36c58d85bf7686c37ec224347dfa7f329846941cc5fdfef99d456de51817b3daa0f9999485e7ef8e8d27cf4bde01e0b1f4a1e2e91fff01deb0853aea3866aae7a60bbd8226672f64bd4374fca452f4d81834f4eac4df811ff37703a8996a72f4aa110dc8a2744c1774cd6b45a7ab231c63ae34682313cc9760692ec2f7ed90dfdc704b5d00955d61c32002532d3a94150a16b9df63cca6de22d5f6685171cf67cebada946ad81d676b1d9b34ef5320d9cd80c70a6f9cccb899ae6eccb266a26b8607f688a0021a44e6e8fdc58c87bd2595be50c979fc592d0da2a0b158309e01f07f2ef3c3ee84f206532a0f13212f8333695b270a4b952b81dda5a367126699169f050562b92cdf4832a9e512e5edcf3780f072c83ab269a83015b05d4bee4971738cd2051000b83f7dc527c46b2a4080453e47512a07febf35f61bd5ac4267af5b1692972960d549207ad04d061d08f34eb23fa58bce4cac2c8af08cdce345653b0d04dc360fec86537e94da96471dfcd969b9dfe384f4c2abe517689859b33e1a19e7ff578dd0fb969867daabe02346c13903542230da1a451f345b0281ab90ecadb5bcc6826d0f389c4cb87182816abd99514e08da1df21d45bf82e57fdeddbed3388cc2789315637189d95d17c5d65e35a1962638ea12f4da5d5364ae8761b94003d58c6158b4653f1a5982475d4f231b69067d9e25a172d935d2e0f642a8f6a253f99ebc9c9103a28406120aeb3cd0ae70377b8a054cbc02760de0278b050f000c3e7d886edc1f0e8cc3aa58a54ed0bd8596819d2b92333fef6213b114db682e2c36de8dcb9dd346940ea7c2a3794bb67ab648745cc22af7cd8e186254ce81d371b52b4f4d0fd06008ea0b0e7b8bf958d202da2fad32f43897ab8e70e717956eeea1ce71121c91f6c41848494e54210339e700363d563680d1ce8592872e04445f6a8386ed1e8f42c3864fda9adf85d772953de676e512e036b72b652d9278863bc69a1f4feb5d62ec6ba602e28c1126f74c595ad8fd44266876693df33622bb3636f387fb0b14480797e87ab99e1a99a3cf7c6a842eaace918c29ea161829b7864123e50a433ca6c889f3b9c4c3700011efc557564a00cf54eaa97e90f333594e7352c071ed49828efeca05bd4a56d97a0897ab96107cd167bc61ac48257cc381731a73a37ebd4352119296e57e37903977cc0a0fa94377ada77541d8427e511934e328bc8f6c100ab37be79ad5bff49cab6894f77d2580bd54d85480ef17cc5de202936e2bf71bfd03d5cef12c55ddbf18a8cd304713adcc715baff8aa6ab39b6347d67f5ed106cdd7ec8e86d5e143e9eb39d0331aa87fcea06a9540d5ec89b3a8a52a6cc963a7baccfe486207fc32661e4a8fe2fbd174ca85c55940fca6f9264fd929566e96ab0014578d84b56f25105866cea2402a48a30a19930aa64cd0556a52e979bccbf787020eaa55d3b27b058e1c41d72788fc28ae08d1978296a88dd468586cbabc8aa9b2026f54ef28d5f075ab3dd265c8a6d5f2ac5266768a59ae066af05ffb50962aea03bffb6c41e6caff123f141657f2163208d53fdb208a89d834699b134bc77dc0b1617ea9f0ef8994bfe8747991e31deada06eda9d6cb321a34d671168cb14468ad7ea250ad9c62de802d25a26ae77e10b4eaaa595b82149da5746b048ea8bc7333fe294460e56ae4d8a499a9569e94e53a405c08a953f9153a86df037bb169d9aee621392ebf8b8ed7525d6102fa52483de660f875ead434905cac74f2958d13ce14ad6100e0e0278517808cef677985a6dfbc88f9cf9093df54ec3183eecff2e5b3738f7dbe659350c8ce8c9c02aeb2673c3cce5aed41a0ae6c2d35897567cfb1eb5ea8a98ef5e62f4055b1e0250112eff6a577ab5e0ce3fca648e6add03ebe6c66f181102e292b71ee1f0acae12253d51ad82523c728eee41c8251bc207c09eccc98afdc31794e2f8ab39ce29fb2273e4254b1033f62db5430d6befb1fe1e8ef9751438250d4cac5cae7ede7f36ea514f6a41f142e107c5224ace3e5bcf911a79a68e1ea94f9e0a7b51eae7b3b5031b50c41a8957a194d0c943305ba61510fcdd4161bfc45ff61aa310305843805422e2ed639068ba28e21467d547d00fe28172e13b6d534037d02c0a4bf22be06e8c3c7be18159c4328fd05755193bc3f65132db49dcce3bac964126f95b0518e39882589601930670abebd92313356cfadfbca433901c00c8b309167feaa54fa2d28f1e805a2cfddce1085afeb5ce039589f73ab149cbbb773b29ee7722e50db5852770c3e5166987c14eaaaea0152e431fd2aee8aa02955452fbc430a4de5ce85db834f2f586a06e1a79c4470268b52b59693317c87f3b40e1827959f65d1128e3b560edc9d31573eba25c6378412de72651062e506de2e22bb673a03d6fbef02e6e775886c736c2d4a43c86976f9fc029233b631971f0ed836810ec5e8d74c2b16bb7dede72e5f33381b4890b6c8a1b2c1d17f83d6686a23bc47e9e83cfb11b313c2886e38e9d2a9f16dc43268df323ae7ec0c1efe7f801bcd96afccef27a279a670365ef1c5f9f4504316ea461a2b3d1fa95fb720a5be3f5d1b1e942c869f0c935bc2b824d5f59ce8dc0659943767c941d653e9e682f662e590129e53d666e0375bfca5e32d4f97c79fcf6a61fd43c00bc50789fdb7f9e945e37746ecb0044b6d3af84877e1c904b15cf2cd7fb5b480703a2cf8bd4d513522fc4d2595289e41ab3b0adcdb93d7b0b4600d426fa48f7ff42cd71e0ac65dc92dda2f9019a665b38c3d3585ac2fcc133f3eb8f6235205dbce7f9651bae5c29cb8fee0ab0929203a44e7e5b971fafa63080d4009e5cabf3bc368fe003ebbf925fe1f083083246eb6a865f093b2e6e5bc47682acea4360db84d7ba3720331ca7a5e101c406eb811e7462894a29917cd8db0019b692d41376f4dbd8c33a3f026a32654499b234c5c596bf5e26542c334df85db709c952bafb73ba71197ed2752f75d8d9c29179b202a90ffef688529abf3675be1a55b923b7a0decf9c8899df7b3aa373480bcef37cbe6952621ba64c2b7a7d715ab9dbb5d0016b174f908846df995195b9c227ae2dd71583fcec89a1c61bad2e8aa05ce803eb55750a7989306894f9cd33c934bfce1f6016b2984a34372b4d7c430e3fdd863dd7ac7d5af0274fbcf834806dbf2d7e05f1eaeefbbc0c76938fc6e06365bdeb7ce76646cad2508138b9eaca6daf758fb92d1449c3295fab34ac4578c426296d3c60b4af771e009a124826b00ca9338f39fc2040fe66f5f14be277a92396abaa31bfc592bc1a7f0030fbec68440796c4e2bcbaa736203245ebe6ee4ff63c4ff1d2beb79b8ceade6f0276ec3ac97a6dec279c4164a81c0d1446522bf04084ad507179d1eede8064578891628d1cdfd0ce2ea444aea8e829247f7c0217b9ae72c5774454c47c678a31fd2c66c42313dc8f15bd86998cffd2156d69c72f0d4894323b4c5422551befc02f2cc703c806caeb89ab2fd33d4e72ace281f06343ad60b08a7fe8b68e07e8d88552b1eb1e1e749459ed6c23fb778072658c250c8bc9072471a8b166b3d0cf6e9668521032fd59d89f3d9533fff84d6bd7498e11c4a6a764d286af04f638f5f288e79557133a8152311fb90f7263df348dfdd798f52cf6f07723613bef5a80b17129ed283bb5aa5ff8b00b5cb26bc0bf91050c8ab4e00b530b72acce82f5b28227ec79e6824d17aa8831c7e2b9fb36a2e58513d68e3a55e2b3d1d36197b4c3b2f5481622ebd19311c30ab3fb705b594f679257f5512056d599f7677eedbb426b99b405b44c8f741984d57ab8f0afa5829fb4262016de1f404996d6f57bf21f57ee373c58a8bf4b4d423a32ec74ffcb2645dd471cccfbce6bca5937a86d1cb9ad4055d9fc22371a1f19dce1f45cda23534606ad6bc6d3fe75ff712d0cbc424729c3fb45e72439f6de4a05a5ade06596eb0bb4f2f27d2af1353e04380ebd3060e255947d47467474b6d4e939375f3a60113ff52aa386e0b0bf39dd8d040fa9b38c3cc28e355822ab0cf252125cf7fbc12431481a509df9a117375ef6d63f02ecf9698bdf6a3a3a6fb4802fbc6fe7e2a0f72e6d654e1cabba540b3cd13ef0ca9548eb0c45207fc1b98feed412d1d88db60f957ce149b9877bd4d188ad7005ff5b9a3b53fa9c0cf7f53982549ead9f1ff13e4278040bf08c7156c83c60f793cf1eb7f97bfeffaa74ba36ec8afb8f11790655aa0a277cdd461fccb71419016ce95743c7b86a53fc9db9ed100ef7e08096413929526d93aaa50c91637ea15e6be71c108faccac08fa3631433761aa9fc9e57b4939b2a433fc87c321aae280ab9d035b607d2c8baf948068ad05de7755d3fdd43744607b0f4a734ff36cd9fc73f3802e573e1e048b20b851aaca601888b801c191851cf1a0e5f572ca5b3b8c62dc75a678c93684d4de7d23054dc82f6de7c7eb432f79d9400d19f323b2f24b298edd529deb3c478889dfdeb63b44c53a2cfff2336b2a54a4d76b220b35010022c594f273982952d0f53d76484dce55fdbc6befc9f37debf8c185af0bc2f1321934192192acc6e86591836f988801f2af2ca71f44d0d527d29f0676e18bffc8343d53c0badc02d135e7057d2d77b0f995cc628bee61fbdcb84437353d4877dd59bd301daed2f16ba132ece8166de2791fe1169abd4a5cce19e9ef3acab1a7b86ac1be635ebcfe3c2f28b15be6c5d8aad0a74f67b934eff95a6c7a3c0d40806549216ed2d994e4239f80ec65edc18b1fca1529b48ec115db71ca071849bc9b2cdcad2b9e0145e38f343f53d91225b51a92bc4a2662c8f95e5684f1d00449ceb40273f5ed458a04ed4088588742b745673ecf90f052ef9674b69495d37c8f0c84bfd565c2be5b4f7fd6cf873b482c5ad180dfd8d807f43e32326a07b1ec37bb31462c8c028787ea208e9ebccdb20688f0b044438b076800a7b22036c322669cf1fe588035d00823dd23ee37056423b81c500f9e4c1788f09e69aca45295b74eb1588b8506402e0bbbab3798cf5a873251ce58d115452f12b0746947586cdd7d5bb610cc96327c3a5675658d5d03796999d0fb2719040134cb1091247ccd2855ef78651c8be23fda2ec3360a4c3dfdbf896fae340068006e1fcdef49029cd7d672dd3bd731af5b6e1dd5a8fc4b4faa673bf5c12874d7b3ea178bbb027583f5a560b79617aaa38e54a9f2d7ed9ed6e2c0238700482c32a5061338b4d74bf31cb3b95bbefee72f70f421946ee53f9ddd") (async) syz_open_procfs(0xffffffffffffffff, 0x0) (async) ioctl$SG_IO(r3, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) (async) setsockopt$inet_tcp_int(r3, 0x6, 0x22, &(0x7f0000000280)=0x3, 0x4) (async) syz_open_procfs(r2, &(0x7f0000000240)='projid_map\x00') (async) dup3(r0, r1, 0x0) (async) 00:26:05 executing program 4: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000200)='cgroup.controllers\x00', 0x26e1, 0x0) openat$cgroup_root(0xffffffffffffff9c, &(0x7f00000002c0)='./cgroup/syz1\x00', 0x200002, 0x0) r1 = bpf$PROG_LOAD(0x5, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000040)={&(0x7f0000000080)='sched_switch\x00', r1}, 0x10) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x40082404, &(0x7f0000000240)=0x1) perf_event_open(0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0xa}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000080)={0x3, 0x3, &(0x7f0000000280)=ANY=[@ANYBLOB="85000062c963ee00"/28], &(0x7f0000000000)='GPL\x00', 0x5, 0x487, &(0x7f000000cf3d)=""/195}, 0x48) bpf$BPF_PROG_TEST_RUN(0xa, 0x0, 0x0) process_vm_writev(0x0, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) perf_event_open(&(0x7f0000000300)={0x5, 0x80, 0x1, 0x81, 0x4, 0x0, 0x0, 0x7, 0x400, 0x4, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x2, 0x1, @perf_config_ext={0xec, 0xffffffffffff0000}, 0x0, 0x4, 0x5, 0x0, 0x3, 0x1, 0x1ff, 0x0, 0x5, 0x0, 0xfffffffffffffffb}, 0x0, 0x0, 0xffffffffffffffff, 0x8) perf_event_open(&(0x7f0000000180)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xbfffffffffffffff, 0xffffffffffffffff, 0x0) r2 = gettid() process_vm_writev(r2, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) ioctl$AUTOFS_DEV_IOCTL_EXPIRE(r0, 0xc018937c, &(0x7f0000000380)=ANY=[@ANYBLOB="010000000100000018000000cb676b33aa9893a4306aa77549a72e3c0d177d8fc315b985ea3da3953be96217289fef095723d09729f62109b95ffe283f75024ca1fc58cb67dfe87ff5f3a672cdbe57d23d0dc3b79a1c8a8144186c6fc8ad929a55ebac39d6c74f89753ac02412e2b497c605313b2708c5cdf365aa6d9f9b0a7bdfbca5c1eba7263cbfe3359753860287165ba1f44663f1c66708705a4ce30e2fd1f54ee850dc9410d8fd7bbb54bf52f67f52d20805bda733b5a3c63c7784c897f9dc3b7d25fd2d3b070400000000000000659f6e", @ANYRES32=r0, @ANYBLOB="01000000000000002e2f66696c653000"]) perf_event_open(0x0, r2, 0x3, r3, 0x1) bpf$MAP_CREATE(0x0, &(0x7f00000010c0)=@base={0x17, 0x3, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x9, '\x00', 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x4}, 0x48) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x6611, 0x0) r4 = syz_clone(0x40000000, 0x0, 0x0, 0x0, &(0x7f0000001200), 0x0) perf_event_open(0x0, r4, 0x6, 0xffffffffffffffff, 0x0) 00:26:05 executing program 3: syz_mount_image$tmpfs(&(0x7f00000002c0), &(0x7f0000000100)='./bus\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, &(0x7f0000000000)=ANY=[], 0x0) chdir(&(0x7f0000000380)='./bus\x00') mkdirat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x0) syz_mount_image$vfat(0x0, &(0x7f0000000240)='./file1\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, 0x0, 0x0) open(&(0x7f0000000000)='./file1\x00', 0x0, 0x202) r0 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r0, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) sendmsg$IPCTNL_MSG_CT_GET_CTRZERO(r0, &(0x7f0000000340)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x4}, 0xc, &(0x7f0000000300)={&(0x7f00000001c0)={0x68, 0x3, 0x1, 0x301, 0x0, 0x0, {0x0, 0x0, 0xa}, [@CTA_MARK_MASK={0x8, 0x15, 0x1, 0x0, 0x1}, @CTA_SEQ_ADJ_REPLY={0x4c, 0x10, 0x0, 0x1, [@CTA_SEQADJ_OFFSET_BEFORE={0x8, 0x2, 0x1, 0x0, 0x5}, @CTA_SEQADJ_CORRECTION_POS={0x8}, @CTA_SEQADJ_OFFSET_BEFORE={0x8, 0x2, 0x1, 0x0, 0x80000000}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x4}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x89}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x7}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x3}, @CTA_SEQADJ_OFFSET_AFTER={0x8, 0x3, 0x1, 0x0, 0x81}, @CTA_SEQADJ_OFFSET_AFTER={0x8, 0x3, 0x1, 0x0, 0x3}]}]}, 0x68}, 0x1, 0x0, 0x0, 0x90}, 0x20000044) mkdir(&(0x7f0000000280)='./bus\x00', 0x0) perf_event_open(&(0x7f0000000740)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50b, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x7}, 0x0, 0x1, 0xffffffffffffffff, 0x0) munmap(&(0x7f0000ff9000/0x4000)=nil, 0x4000) mount$overlay(0x0, &(0x7f00000000c0)='./file0\x00', &(0x7f0000000080), 0x7200004, &(0x7f0000000180)={[{@workdir={'workdir', 0x3d, './file1'}}, {@nfs_export_off}, {@upperdir={'upperdir', 0x3d, './bus'}}]}) 00:26:05 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0xfffffff5}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:05 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r2, 0x0, 0x10000, 0x0) vmsplice(r1, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r2, 0x0, 0x4) ioctl$LOOP_GET_STATUS64(r2, 0x4c05, &(0x7f00000027c0)) write$binfmt_elf64(r0, &(0x7f0000000ac0)=ANY=[@ANYBLOB="7f454c460000000000000000000000000000000000000000000000000000000040000000000000000000000000000000ffffff7f00003816000000000000000000000000e4380000000000000000000000000000000000000000000000000000000000000000000000000000000c00"/120], 0x78) r3 = syz_open_procfs(0xffffffffffffffff, 0x0) r4 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r4, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) ioctl$LOOP_SET_FD(r4, 0x4c00, r0) ioctl$SG_IO(r3, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) sendmmsg$alg(r3, &(0x7f00000002c0)=[{0x0, 0x0, &(0x7f0000000240)=[{&(0x7f0000000040)="f45a1a3d9104825093abe3ad6e2d8786d16bd998c6979a013bf2aba7989c6f00dcc9d7d667cc59b60e7fab1894e00607bc23700aa19fc4ec68f3883bf598f04006", 0x41}, {&(0x7f0000000140)="74108f08e2ab9f9a748aaaeedae0b6c3cd1d9f6b17e112e724a05fa47183f7052a8f301959fc425d651c8b0485c4c98d2a53ae9a6aea8be1fac42ee35f50c54b82f877c16ca067131e1ed06c435f11b1ff6277ab426dd53de5ee47290d3bd072cf7e0297a2a14c59348254a93d66093c25bd39e09e9f604d408fc0b3c81e0f4291833b352c5997953f2474dc81be6e7b697e7cbed5016314afd250dab875d695c56c9311e90ef0d2e5f999185bff2d1bbc6d0e70eb63586ea416eb4cc0744f014ddb2111f471fd4d77ff502c3dcbc0d07271ceec4d134fa66d7d2e7181466696ea5abb8d5df9270c1e", 0xe9}], 0x2, &(0x7f0000000280)=[@assoc={0x18, 0x117, 0x4, 0x24a}], 0x18, 0x20000000}], 0x1, 0x40) 00:26:05 executing program 3: syz_mount_image$tmpfs(&(0x7f00000002c0), &(0x7f0000000100)='./bus\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, &(0x7f0000000000)=ANY=[], 0x0) (async) chdir(&(0x7f0000000380)='./bus\x00') (async) mkdirat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x0) syz_mount_image$vfat(0x0, &(0x7f0000000240)='./file1\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, 0x0, 0x0) (async) open(&(0x7f0000000000)='./file1\x00', 0x0, 0x202) r0 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r0, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) sendmsg$IPCTNL_MSG_CT_GET_CTRZERO(r0, &(0x7f0000000340)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x4}, 0xc, &(0x7f0000000300)={&(0x7f00000001c0)={0x68, 0x3, 0x1, 0x301, 0x0, 0x0, {0x0, 0x0, 0xa}, [@CTA_MARK_MASK={0x8, 0x15, 0x1, 0x0, 0x1}, @CTA_SEQ_ADJ_REPLY={0x4c, 0x10, 0x0, 0x1, [@CTA_SEQADJ_OFFSET_BEFORE={0x8, 0x2, 0x1, 0x0, 0x5}, @CTA_SEQADJ_CORRECTION_POS={0x8}, @CTA_SEQADJ_OFFSET_BEFORE={0x8, 0x2, 0x1, 0x0, 0x80000000}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x4}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x89}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x7}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x3}, @CTA_SEQADJ_OFFSET_AFTER={0x8, 0x3, 0x1, 0x0, 0x81}, @CTA_SEQADJ_OFFSET_AFTER={0x8, 0x3, 0x1, 0x0, 0x3}]}]}, 0x68}, 0x1, 0x0, 0x0, 0x90}, 0x20000044) (async) mkdir(&(0x7f0000000280)='./bus\x00', 0x0) (async) perf_event_open(&(0x7f0000000740)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50b, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x7}, 0x0, 0x1, 0xffffffffffffffff, 0x0) munmap(&(0x7f0000ff9000/0x4000)=nil, 0x4000) (async) mount$overlay(0x0, &(0x7f00000000c0)='./file0\x00', &(0x7f0000000080), 0x7200004, &(0x7f0000000180)={[{@workdir={'workdir', 0x3d, './file1'}}, {@nfs_export_off}, {@upperdir={'upperdir', 0x3d, './bus'}}]}) 00:26:06 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0xfffffff6}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) [ 943.624317] overlayfs: missing 'lowerdir' [ 943.634029] tmpfs: No value for mount option './file1' 00:26:06 executing program 3: syz_mount_image$tmpfs(&(0x7f00000002c0), &(0x7f0000000100)='./bus\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, &(0x7f0000000000)=ANY=[], 0x0) (async) chdir(&(0x7f0000000380)='./bus\x00') (async) mkdirat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x0) (async) syz_mount_image$vfat(0x0, &(0x7f0000000240)='./file1\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, 0x0, 0x0) (async) open(&(0x7f0000000000)='./file1\x00', 0x0, 0x202) (async) r0 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r0, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) sendmsg$IPCTNL_MSG_CT_GET_CTRZERO(r0, &(0x7f0000000340)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x4}, 0xc, &(0x7f0000000300)={&(0x7f00000001c0)={0x68, 0x3, 0x1, 0x301, 0x0, 0x0, {0x0, 0x0, 0xa}, [@CTA_MARK_MASK={0x8, 0x15, 0x1, 0x0, 0x1}, @CTA_SEQ_ADJ_REPLY={0x4c, 0x10, 0x0, 0x1, [@CTA_SEQADJ_OFFSET_BEFORE={0x8, 0x2, 0x1, 0x0, 0x5}, @CTA_SEQADJ_CORRECTION_POS={0x8}, @CTA_SEQADJ_OFFSET_BEFORE={0x8, 0x2, 0x1, 0x0, 0x80000000}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x4}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x89}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x7}, @CTA_SEQADJ_CORRECTION_POS={0x8, 0x1, 0x1, 0x0, 0x3}, @CTA_SEQADJ_OFFSET_AFTER={0x8, 0x3, 0x1, 0x0, 0x81}, @CTA_SEQADJ_OFFSET_AFTER={0x8, 0x3, 0x1, 0x0, 0x3}]}]}, 0x68}, 0x1, 0x0, 0x0, 0x90}, 0x20000044) mkdir(&(0x7f0000000280)='./bus\x00', 0x0) (async) perf_event_open(&(0x7f0000000740)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50b, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x7}, 0x0, 0x1, 0xffffffffffffffff, 0x0) (async) munmap(&(0x7f0000ff9000/0x4000)=nil, 0x4000) mount$overlay(0x0, &(0x7f00000000c0)='./file0\x00', &(0x7f0000000080), 0x7200004, &(0x7f0000000180)={[{@workdir={'workdir', 0x3d, './file1'}}, {@nfs_export_off}, {@upperdir={'upperdir', 0x3d, './bus'}}]}) [ 943.834851] overlayfs: missing 'lowerdir' 00:26:06 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x1000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:06 executing program 3: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000000)=0x6) r0 = getpid() sched_setaffinity(0x0, 0x8, &(0x7f0000000240)=0x2) sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = socket(0x10, 0x2, 0x0) write(r3, &(0x7f0000000100)="1c0000001a009b8a14000000ff0000adf87e28000000000000000000", 0x1c) recvmmsg(r3, &(0x7f0000003cc0)=[{{&(0x7f0000003e80)=@llc={0x1a, 0x0, 0x0, 0x0, 0x0, 0x0, @dev}, 0x80, &(0x7f0000000080)=[{&(0x7f0000001740)=""/4096, 0x1000}, {&(0x7f00000006c0)=""/228, 0xe4}, {&(0x7f0000002740)=""/209, 0xd1}], 0x3}, 0x8}, {{&(0x7f0000000340)=@ieee802154={0x24, @short}, 0x80, &(0x7f00000003c0)=[{&(0x7f00000005c0)=""/98, 0x62}, {&(0x7f00000009c0)=""/157, 0x9d}], 0x2, &(0x7f0000000640)=""/4, 0x4}, 0x400}, {{&(0x7f0000000a80)=@rxrpc=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x0, @remote}}, 0x80, &(0x7f00000007c0)=[{&(0x7f0000000b00)=""/130, 0x82}, {&(0x7f0000000bc0)=""/237, 0xed}, {&(0x7f0000000d40)=""/227, 0xe3}], 0x3}, 0x4}, {{&(0x7f0000000e40)=@l2={0x1f, 0x0, @fixed}, 0x80, &(0x7f0000000f00)=[{&(0x7f0000000ec0)=""/49, 0x31}], 0x1}, 0x80000000}, {{&(0x7f0000000f40)=@xdp, 0x80, &(0x7f00000010c0)=[{&(0x7f0000000fc0)=""/220, 0xdc}], 0x1, &(0x7f0000000300)=""/40, 0x28}, 0x100000}, {{&(0x7f0000001140)=@ieee802154, 0x80, &(0x7f00000002c0)=[{&(0x7f0000002a00)=""/253, 0xfd}], 0x1, &(0x7f00000008c0)=""/74, 0x4a}, 0x8}, {{&(0x7f00000028c0)=@ieee802154={0x24, @long}, 0x80, &(0x7f0000003c40)=[{&(0x7f0000002940)=""/172, 0xac}, {&(0x7f0000001440)=""/25, 0x19}, {&(0x7f0000003f00)=""/4096, 0x1000}, {&(0x7f0000003a00)=""/47, 0x2f}, {&(0x7f0000003a40)=""/220, 0xdc}, {&(0x7f0000003b40)=""/246, 0xf6}], 0x6}, 0xe000}], 0x7, 0x0, &(0x7f00000001c0)={0x77359400}) r4 = creat(&(0x7f0000000040)='./bus\x00', 0x9) ftruncate(r4, 0x800) lseek(r4, 0x200, 0x2) recvmmsg(r3, &(0x7f0000005580)=[{{0x0, 0x0, &(0x7f0000000840)=[{&(0x7f0000000400)=""/141, 0x8d}, {&(0x7f00000000c0)=""/5, 0x5}, {&(0x7f0000002b00)=""/204, 0xcc}, {0x0}, {&(0x7f0000005900)=""/262, 0x106}, {&(0x7f0000000800)=""/4, 0x4}], 0x6, &(0x7f00000002c0)}, 0x7e073bf1}, {{&(0x7f0000000cc0)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @multicast2}}}, 0x80, 0x0, 0x0, &(0x7f00000011c0)=""/27, 0x1b}}, {{&(0x7f0000001200)=@pppol2tpin6={0x18, 0x1, {0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, {0xa, 0x0, 0x0, @dev}}}, 0x80, &(0x7f00000015c0)=[{&(0x7f0000001280)=""/117, 0x75}, {&(0x7f0000001300)=""/230, 0xe6}, {&(0x7f0000001400)}, {&(0x7f0000000680)=""/17, 0x11}, {&(0x7f0000001480)=""/43, 0x2b}, {&(0x7f00000014c0)=""/194, 0xc2}], 0x6, &(0x7f0000001640)=""/238, 0xee}, 0x7}, {{0x0, 0x0, &(0x7f0000005080)}, 0x8}, {{&(0x7f0000005100)=@can, 0x80, &(0x7f00000054c0)=[{&(0x7f0000005180)=""/12, 0xc}, {&(0x7f00000051c0)=""/9, 0x9}, {&(0x7f00000004c0)=""/77, 0x4d}, {&(0x7f0000005280)=""/126, 0x7e}, {&(0x7f0000005300)=""/225, 0xe1}, {&(0x7f0000005400)=""/153, 0x99}], 0x6, &(0x7f0000005540)=""/36, 0x24}, 0x4}], 0x5, 0x40010002, &(0x7f00000057c0)) sched_setscheduler(0x0, 0x6, &(0x7f0000000280)=0x9) socket$inet_tcp(0x2, 0x1, 0x0) r5 = open(&(0x7f0000000000)='./bus\x00', 0x24000, 0x0) sendfile(r4, r5, 0x0, 0x1dd00) 00:26:06 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff}) (async) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r2, 0x0, 0x10000, 0x0) (async) vmsplice(r1, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) (async) write$binfmt_misc(r2, 0x0, 0x4) (async, rerun: 32) ioctl$LOOP_GET_STATUS64(r2, 0x4c05, &(0x7f00000027c0)) (async, rerun: 32) write$binfmt_elf64(r0, &(0x7f0000000ac0)=ANY=[@ANYBLOB="7f454c460000000000000000000000000000000000000000000000000000000040000000000000000000000000000000ffffff7f00003816000000000000000000000000e4380000000000000000000000000000000000000000000000000000000000000000000000000000000c00"/120], 0x78) (async) r3 = syz_open_procfs(0xffffffffffffffff, 0x0) (async) r4 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r4, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) (async) ioctl$LOOP_SET_FD(r4, 0x4c00, r0) (async, rerun: 32) ioctl$SG_IO(r3, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) (rerun: 32) sendmmsg$alg(r3, &(0x7f00000002c0)=[{0x0, 0x0, &(0x7f0000000240)=[{&(0x7f0000000040)="f45a1a3d9104825093abe3ad6e2d8786d16bd998c6979a013bf2aba7989c6f00dcc9d7d667cc59b60e7fab1894e00607bc23700aa19fc4ec68f3883bf598f04006", 0x41}, {&(0x7f0000000140)="74108f08e2ab9f9a748aaaeedae0b6c3cd1d9f6b17e112e724a05fa47183f7052a8f301959fc425d651c8b0485c4c98d2a53ae9a6aea8be1fac42ee35f50c54b82f877c16ca067131e1ed06c435f11b1ff6277ab426dd53de5ee47290d3bd072cf7e0297a2a14c59348254a93d66093c25bd39e09e9f604d408fc0b3c81e0f4291833b352c5997953f2474dc81be6e7b697e7cbed5016314afd250dab875d695c56c9311e90ef0d2e5f999185bff2d1bbc6d0e70eb63586ea416eb4cc0744f014ddb2111f471fd4d77ff502c3dcbc0d07271ceec4d134fa66d7d2e7181466696ea5abb8d5df9270c1e", 0xe9}], 0x2, &(0x7f0000000280)=[@assoc={0x18, 0x117, 0x4, 0x24a}], 0x18, 0x20000000}], 0x1, 0x40) 00:26:06 executing program 2: move_pages(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x2) shutdown(0xffffffffffffffff, 0x0) ioctl$DRM_IOCTL_MODE_SETCRTC(0xffffffffffffffff, 0xc06864a2, &(0x7f0000000300)={&(0x7f0000000200)=[0x0, 0x0], 0x2, 0x1, 0x6, 0x14540000, 0x0, 0x2a40, 0x3, {0x85a, 0x0, 0x6, 0x0, 0x400, 0x800, 0x800, 0x1, 0x800, 0x276, 0x1, 0x9, 0x8, 0x4, "27fec02ad7c21878c2f3b8a455be6c79c265b557f34622a36077bec5853ed0d9"}}) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0xa0, 0x0, 0x7f, 0x0, 0x0, 0x14, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x4000, 0x20000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000280)={0x0, 0x80, 0x2, 0x8, 0x0, 0x0, 0x0, 0x200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1ff}, 0x4180, 0x7498, 0xffffffa5, 0x2, 0x0, 0xd0b, 0x0, 0x0, 0x0, 0x0, 0x4}, 0xffffffffffffffff, 0xd, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000000400)={0x0, 0x665, &(0x7f0000000380)=[{&(0x7f0000000180)=ANY=[@ANYBLOB="140000002300bd91000000006800000004000080edfec366b3a859b26040cd188aa6a1ca723c16ec28f1ae43f3f1a6f3888ae468740e56f5255f92fbfd06d0"], 0x14}], 0x1}, 0x0) r1 = openat$rdma_cm(0xffffffffffffff9c, 0x0, 0x2, 0x0) write$RDMA_USER_CM_CMD_CREATE_ID(r1, &(0x7f00000001c0)={0x0, 0x18, 0xfa00, {0x0, 0x0, 0x111}}, 0x20) write$RDMA_USER_CM_CMD_RESOLVE_ADDR(r1, &(0x7f0000000000)={0x15, 0x110, 0xfa08, {0xffffffffffffffff, 0x0, 0x10, 0x10, 0x0, @in={0x2, 0x0, @empty}, @in={0x2, 0x0, @dev}}}, 0x118) fallocate(0xffffffffffffffff, 0x0, 0x0, 0x0) socketpair$tipc(0x1e, 0x0, 0x0, &(0x7f0000000080)) [ 944.300439] audit: type=1804 audit(1665188766.871:191): pid=32254 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir1759607675/syzkaller.B9LP3d/1368/bus" dev="sda1" ino=14580 res=1 [ 944.773645] audit: type=1800 audit(1665188766.871:192): pid=32254 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=14580 res=0 00:26:07 executing program 5: r0 = getpgid(0x0) r1 = perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0xfffffffffffffffe}, r0, 0x0, 0xffffffffffffffff, 0x0) r2 = openat$procfs(0xffffffffffffff9c, &(0x7f00000000c0)='/proc/crypto\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x4, 0x7f, 0x6, 0x40, 0x0, 0x5, 0x8110, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x2, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x0, @perf_bp={&(0x7f0000000000), 0x3}, 0x0, 0x400, 0xdb, 0x0, 0xfffffffffffffffb, 0x6, 0xa99, 0x0, 0x7fff, 0x0, 0x45928529}, 0xffffffffffffffff, 0x8, r2, 0x0) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r4 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r4, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB='\x00\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090000000000000000001f000000"], 0x14}}, 0x0) mmap(&(0x7f0000ffb000/0x2000)=nil, 0x2000, 0x9, 0x40010, r4, 0x3f9bb000) r5 = socket$inet_smc(0x2b, 0x1, 0x0) dup3(r1, r5, 0x0) 00:26:07 executing program 2: move_pages(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x2) shutdown(0xffffffffffffffff, 0x0) ioctl$DRM_IOCTL_MODE_SETCRTC(0xffffffffffffffff, 0xc06864a2, &(0x7f0000000300)={&(0x7f0000000200)=[0x0, 0x0], 0x2, 0x1, 0x6, 0x14540000, 0x0, 0x2a40, 0x3, {0x85a, 0x0, 0x6, 0x0, 0x400, 0x800, 0x800, 0x1, 0x800, 0x276, 0x1, 0x9, 0x8, 0x4, "27fec02ad7c21878c2f3b8a455be6c79c265b557f34622a36077bec5853ed0d9"}}) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0xa0, 0x0, 0x7f, 0x0, 0x0, 0x14, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x4000, 0x20000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000280)={0x0, 0x80, 0x2, 0x8, 0x0, 0x0, 0x0, 0x200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1ff}, 0x4180, 0x7498, 0xffffffa5, 0x2, 0x0, 0xd0b, 0x0, 0x0, 0x0, 0x0, 0x4}, 0xffffffffffffffff, 0xd, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000000400)={0x0, 0x665, &(0x7f0000000380)=[{&(0x7f0000000180)=ANY=[@ANYBLOB="140000002300bd91000000006800000004000080edfec366b3a859b26040cd188aa6a1ca723c16ec28f1ae43f3f1a6f3888ae468740e56f5255f92fbfd06d0"], 0x14}], 0x1}, 0x0) r1 = openat$rdma_cm(0xffffffffffffff9c, 0x0, 0x2, 0x0) write$RDMA_USER_CM_CMD_CREATE_ID(r1, &(0x7f00000001c0)={0x0, 0x18, 0xfa00, {0x0, 0x0, 0x111}}, 0x20) write$RDMA_USER_CM_CMD_RESOLVE_ADDR(r1, &(0x7f0000000000)={0x15, 0x110, 0xfa08, {0xffffffffffffffff, 0x0, 0x10, 0x10, 0x0, @in={0x2, 0x0, @empty}, @in={0x2, 0x0, @dev}}}, 0x118) fallocate(0xffffffffffffffff, 0x0, 0x0, 0x0) socketpair$tipc(0x1e, 0x0, 0x0, &(0x7f0000000080)) move_pages(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x2) (async) shutdown(0xffffffffffffffff, 0x0) (async) ioctl$DRM_IOCTL_MODE_SETCRTC(0xffffffffffffffff, 0xc06864a2, &(0x7f0000000300)={&(0x7f0000000200)=[0x0, 0x0], 0x2, 0x1, 0x6, 0x14540000, 0x0, 0x2a40, 0x3, {0x85a, 0x0, 0x6, 0x0, 0x400, 0x800, 0x800, 0x1, 0x800, 0x276, 0x1, 0x9, 0x8, 0x4, "27fec02ad7c21878c2f3b8a455be6c79c265b557f34622a36077bec5853ed0d9"}}) (async) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0xa0, 0x0, 0x7f, 0x0, 0x0, 0x14, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x4000, 0x20000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) (async) perf_event_open(&(0x7f0000000280)={0x0, 0x80, 0x2, 0x8, 0x0, 0x0, 0x0, 0x200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1ff}, 0x4180, 0x7498, 0xffffffa5, 0x2, 0x0, 0xd0b, 0x0, 0x0, 0x0, 0x0, 0x4}, 0xffffffffffffffff, 0xd, 0xffffffffffffffff, 0x0) (async) socket$nl_generic(0x10, 0x3, 0x10) (async) sendmsg$netlink(r0, &(0x7f0000000400)={0x0, 0x665, &(0x7f0000000380)=[{&(0x7f0000000180)=ANY=[@ANYBLOB="140000002300bd91000000006800000004000080edfec366b3a859b26040cd188aa6a1ca723c16ec28f1ae43f3f1a6f3888ae468740e56f5255f92fbfd06d0"], 0x14}], 0x1}, 0x0) (async) openat$rdma_cm(0xffffffffffffff9c, 0x0, 0x2, 0x0) (async) write$RDMA_USER_CM_CMD_CREATE_ID(r1, &(0x7f00000001c0)={0x0, 0x18, 0xfa00, {0x0, 0x0, 0x111}}, 0x20) (async) write$RDMA_USER_CM_CMD_RESOLVE_ADDR(r1, &(0x7f0000000000)={0x15, 0x110, 0xfa08, {0xffffffffffffffff, 0x0, 0x10, 0x10, 0x0, @in={0x2, 0x0, @empty}, @in={0x2, 0x0, @dev}}}, 0x118) (async) fallocate(0xffffffffffffffff, 0x0, 0x0, 0x0) (async) socketpair$tipc(0x1e, 0x0, 0x0, &(0x7f0000000080)) (async) 00:26:07 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x10000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:07 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r2, 0x0, 0x10000, 0x0) vmsplice(r1, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r2, 0x0, 0x4) ioctl$LOOP_GET_STATUS64(r2, 0x4c05, &(0x7f00000027c0)) write$binfmt_elf64(r0, &(0x7f0000000ac0)=ANY=[@ANYBLOB="7f454c460000000000000000000000000000000000000000000000000000000040000000000000000000000000000000ffffff7f00003816000000000000000000000000e4380000000000000000000000000000000000000000000000000000000000000000000000000000000c00"/120], 0x78) r3 = syz_open_procfs(0xffffffffffffffff, 0x0) r4 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r4, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) ioctl$LOOP_SET_FD(r4, 0x4c00, r0) ioctl$SG_IO(r3, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) sendmmsg$alg(r3, &(0x7f00000002c0)=[{0x0, 0x0, &(0x7f0000000240)=[{&(0x7f0000000040)="f45a1a3d9104825093abe3ad6e2d8786d16bd998c6979a013bf2aba7989c6f00dcc9d7d667cc59b60e7fab1894e00607bc23700aa19fc4ec68f3883bf598f04006", 0x41}, {&(0x7f0000000140)="74108f08e2ab9f9a748aaaeedae0b6c3cd1d9f6b17e112e724a05fa47183f7052a8f301959fc425d651c8b0485c4c98d2a53ae9a6aea8be1fac42ee35f50c54b82f877c16ca067131e1ed06c435f11b1ff6277ab426dd53de5ee47290d3bd072cf7e0297a2a14c59348254a93d66093c25bd39e09e9f604d408fc0b3c81e0f4291833b352c5997953f2474dc81be6e7b697e7cbed5016314afd250dab875d695c56c9311e90ef0d2e5f999185bff2d1bbc6d0e70eb63586ea416eb4cc0744f014ddb2111f471fd4d77ff502c3dcbc0d07271ceec4d134fa66d7d2e7181466696ea5abb8d5df9270c1e", 0xe9}], 0x2, &(0x7f0000000280)=[@assoc={0x18, 0x117, 0x4, 0x24a}], 0x18, 0x20000000}], 0x1, 0x40) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)) (async) pipe(&(0x7f00000000c0)) (async) splice(r0, 0x0, r2, 0x0, 0x10000, 0x0) (async) vmsplice(r1, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) (async) write$binfmt_misc(r2, 0x0, 0x4) (async) ioctl$LOOP_GET_STATUS64(r2, 0x4c05, &(0x7f00000027c0)) (async) write$binfmt_elf64(r0, &(0x7f0000000ac0)=ANY=[@ANYBLOB="7f454c460000000000000000000000000000000000000000000000000000000040000000000000000000000000000000ffffff7f00003816000000000000000000000000e4380000000000000000000000000000000000000000000000000000000000000000000000000000000c00"/120], 0x78) (async) syz_open_procfs(0xffffffffffffffff, 0x0) (async) syz_open_procfs(0xffffffffffffffff, 0x0) (async) ioctl$SG_IO(r4, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) (async) ioctl$LOOP_SET_FD(r4, 0x4c00, r0) (async) ioctl$SG_IO(r3, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) (async) sendmmsg$alg(r3, &(0x7f00000002c0)=[{0x0, 0x0, &(0x7f0000000240)=[{&(0x7f0000000040)="f45a1a3d9104825093abe3ad6e2d8786d16bd998c6979a013bf2aba7989c6f00dcc9d7d667cc59b60e7fab1894e00607bc23700aa19fc4ec68f3883bf598f04006", 0x41}, {&(0x7f0000000140)="74108f08e2ab9f9a748aaaeedae0b6c3cd1d9f6b17e112e724a05fa47183f7052a8f301959fc425d651c8b0485c4c98d2a53ae9a6aea8be1fac42ee35f50c54b82f877c16ca067131e1ed06c435f11b1ff6277ab426dd53de5ee47290d3bd072cf7e0297a2a14c59348254a93d66093c25bd39e09e9f604d408fc0b3c81e0f4291833b352c5997953f2474dc81be6e7b697e7cbed5016314afd250dab875d695c56c9311e90ef0d2e5f999185bff2d1bbc6d0e70eb63586ea416eb4cc0744f014ddb2111f471fd4d77ff502c3dcbc0d07271ceec4d134fa66d7d2e7181466696ea5abb8d5df9270c1e", 0xe9}], 0x2, &(0x7f0000000280)=[@assoc={0x18, 0x117, 0x4, 0x24a}], 0x18, 0x20000000}], 0x1, 0x40) (async) 00:26:07 executing program 4: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000200)='cgroup.controllers\x00', 0x26e1, 0x0) (async) openat$cgroup_root(0xffffffffffffff9c, &(0x7f00000002c0)='./cgroup/syz1\x00', 0x200002, 0x0) r1 = bpf$PROG_LOAD(0x5, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000040)={&(0x7f0000000080)='sched_switch\x00', r1}, 0x10) (async) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x40082404, &(0x7f0000000240)=0x1) (async, rerun: 32) perf_event_open(0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0) (async, rerun: 32) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0xa}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000080)={0x3, 0x3, &(0x7f0000000280)=ANY=[@ANYBLOB="85000062c963ee00"/28], &(0x7f0000000000)='GPL\x00', 0x5, 0x487, &(0x7f000000cf3d)=""/195}, 0x48) (async) bpf$BPF_PROG_TEST_RUN(0xa, 0x0, 0x0) process_vm_writev(0x0, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) (async) perf_event_open(&(0x7f0000000300)={0x5, 0x80, 0x1, 0x81, 0x4, 0x0, 0x0, 0x7, 0x400, 0x4, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x2, 0x1, @perf_config_ext={0xec, 0xffffffffffff0000}, 0x0, 0x4, 0x5, 0x0, 0x3, 0x1, 0x1ff, 0x0, 0x5, 0x0, 0xfffffffffffffffb}, 0x0, 0x0, 0xffffffffffffffff, 0x8) (async, rerun: 64) perf_event_open(&(0x7f0000000180)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xbfffffffffffffff, 0xffffffffffffffff, 0x0) (async, rerun: 64) r2 = gettid() process_vm_writev(r2, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) (async) ioctl$AUTOFS_DEV_IOCTL_EXPIRE(r0, 0xc018937c, &(0x7f0000000380)=ANY=[@ANYBLOB="010000000100000018000000cb676b33aa9893a4306aa77549a72e3c0d177d8fc315b985ea3da3953be96217289fef095723d09729f62109b95ffe283f75024ca1fc58cb67dfe87ff5f3a672cdbe57d23d0dc3b79a1c8a8144186c6fc8ad929a55ebac39d6c74f89753ac02412e2b497c605313b2708c5cdf365aa6d9f9b0a7bdfbca5c1eba7263cbfe3359753860287165ba1f44663f1c66708705a4ce30e2fd1f54ee850dc9410d8fd7bbb54bf52f67f52d20805bda733b5a3c63c7784c897f9dc3b7d25fd2d3b070400000000000000659f6e", @ANYRES32=r0, @ANYBLOB="01000000000000002e2f66696c653000"]) (async) perf_event_open(0x0, r2, 0x3, r3, 0x1) bpf$MAP_CREATE(0x0, &(0x7f00000010c0)=@base={0x17, 0x3, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x9, '\x00', 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x4}, 0x48) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x6611, 0x0) (async) r4 = syz_clone(0x40000000, 0x0, 0x0, 0x0, &(0x7f0000001200), 0x0) perf_event_open(0x0, r4, 0x6, 0xffffffffffffffff, 0x0) 00:26:07 executing program 3: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000000)=0x6) r0 = getpid() sched_setaffinity(0x0, 0x8, &(0x7f0000000240)=0x2) sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = socket(0x10, 0x2, 0x0) write(r3, &(0x7f0000000100)="1c0000001a009b8a14000000ff0000adf87e28000000000000000000", 0x1c) recvmmsg(r3, &(0x7f0000003cc0)=[{{&(0x7f0000003e80)=@llc={0x1a, 0x0, 0x0, 0x0, 0x0, 0x0, @dev}, 0x80, &(0x7f0000000080)=[{&(0x7f0000001740)=""/4096, 0x1000}, {&(0x7f00000006c0)=""/228, 0xe4}, {&(0x7f0000002740)=""/209, 0xd1}], 0x3}, 0x8}, {{&(0x7f0000000340)=@ieee802154={0x24, @short}, 0x80, &(0x7f00000003c0)=[{&(0x7f00000005c0)=""/98, 0x62}, {&(0x7f00000009c0)=""/157, 0x9d}], 0x2, &(0x7f0000000640)=""/4, 0x4}, 0x400}, {{&(0x7f0000000a80)=@rxrpc=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x0, @remote}}, 0x80, &(0x7f00000007c0)=[{&(0x7f0000000b00)=""/130, 0x82}, {&(0x7f0000000bc0)=""/237, 0xed}, {&(0x7f0000000d40)=""/227, 0xe3}], 0x3}, 0x4}, {{&(0x7f0000000e40)=@l2={0x1f, 0x0, @fixed}, 0x80, &(0x7f0000000f00)=[{&(0x7f0000000ec0)=""/49, 0x31}], 0x1}, 0x80000000}, {{&(0x7f0000000f40)=@xdp, 0x80, &(0x7f00000010c0)=[{&(0x7f0000000fc0)=""/220, 0xdc}], 0x1, &(0x7f0000000300)=""/40, 0x28}, 0x100000}, {{&(0x7f0000001140)=@ieee802154, 0x80, &(0x7f00000002c0)=[{&(0x7f0000002a00)=""/253, 0xfd}], 0x1, &(0x7f00000008c0)=""/74, 0x4a}, 0x8}, {{&(0x7f00000028c0)=@ieee802154={0x24, @long}, 0x80, &(0x7f0000003c40)=[{&(0x7f0000002940)=""/172, 0xac}, {&(0x7f0000001440)=""/25, 0x19}, {&(0x7f0000003f00)=""/4096, 0x1000}, {&(0x7f0000003a00)=""/47, 0x2f}, {&(0x7f0000003a40)=""/220, 0xdc}, {&(0x7f0000003b40)=""/246, 0xf6}], 0x6}, 0xe000}], 0x7, 0x0, &(0x7f00000001c0)={0x77359400}) r4 = creat(&(0x7f0000000040)='./bus\x00', 0x9) ftruncate(r4, 0x800) lseek(r4, 0x200, 0x2) recvmmsg(r3, &(0x7f0000005580)=[{{0x0, 0x0, &(0x7f0000000840)=[{&(0x7f0000000400)=""/141, 0x8d}, {&(0x7f00000000c0)=""/5, 0x5}, {&(0x7f0000002b00)=""/204, 0xcc}, {0x0}, {&(0x7f0000005900)=""/262, 0x106}, {&(0x7f0000000800)=""/4, 0x4}], 0x6, &(0x7f00000002c0)}, 0x7e073bf1}, {{&(0x7f0000000cc0)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @multicast2}}}, 0x80, 0x0, 0x0, &(0x7f00000011c0)=""/27, 0x1b}}, {{&(0x7f0000001200)=@pppol2tpin6={0x18, 0x1, {0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, {0xa, 0x0, 0x0, @dev}}}, 0x80, &(0x7f00000015c0)=[{&(0x7f0000001280)=""/117, 0x75}, {&(0x7f0000001300)=""/230, 0xe6}, {&(0x7f0000001400)}, {&(0x7f0000000680)=""/17, 0x11}, {&(0x7f0000001480)=""/43, 0x2b}, {&(0x7f00000014c0)=""/194, 0xc2}], 0x6, &(0x7f0000001640)=""/238, 0xee}, 0x7}, {{0x0, 0x0, &(0x7f0000005080)}, 0x8}, {{&(0x7f0000005100)=@can, 0x80, &(0x7f00000054c0)=[{&(0x7f0000005180)=""/12, 0xc}, {&(0x7f00000051c0)=""/9, 0x9}, {&(0x7f00000004c0)=""/77, 0x4d}, {&(0x7f0000005280)=""/126, 0x7e}, {&(0x7f0000005300)=""/225, 0xe1}, {&(0x7f0000005400)=""/153, 0x99}], 0x6, &(0x7f0000005540)=""/36, 0x24}, 0x4}], 0x5, 0x40010002, &(0x7f00000057c0)) sched_setscheduler(0x0, 0x6, &(0x7f0000000280)=0x9) socket$inet_tcp(0x2, 0x1, 0x0) r5 = open(&(0x7f0000000000)='./bus\x00', 0x24000, 0x0) sendfile(r4, r5, 0x0, 0x1dd00) prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) (async) sched_setscheduler(0x0, 0x2, &(0x7f0000000000)=0x6) (async) getpid() (async) sched_setaffinity(0x0, 0x8, &(0x7f0000000240)=0x2) (async) sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) (async) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)) (async) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) (async) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) (async) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) (async) socket(0x10, 0x2, 0x0) (async) write(r3, &(0x7f0000000100)="1c0000001a009b8a14000000ff0000adf87e28000000000000000000", 0x1c) (async) recvmmsg(r3, &(0x7f0000003cc0)=[{{&(0x7f0000003e80)=@llc={0x1a, 0x0, 0x0, 0x0, 0x0, 0x0, @dev}, 0x80, &(0x7f0000000080)=[{&(0x7f0000001740)=""/4096, 0x1000}, {&(0x7f00000006c0)=""/228, 0xe4}, {&(0x7f0000002740)=""/209, 0xd1}], 0x3}, 0x8}, {{&(0x7f0000000340)=@ieee802154={0x24, @short}, 0x80, &(0x7f00000003c0)=[{&(0x7f00000005c0)=""/98, 0x62}, {&(0x7f00000009c0)=""/157, 0x9d}], 0x2, &(0x7f0000000640)=""/4, 0x4}, 0x400}, {{&(0x7f0000000a80)=@rxrpc=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x0, @remote}}, 0x80, &(0x7f00000007c0)=[{&(0x7f0000000b00)=""/130, 0x82}, {&(0x7f0000000bc0)=""/237, 0xed}, {&(0x7f0000000d40)=""/227, 0xe3}], 0x3}, 0x4}, {{&(0x7f0000000e40)=@l2={0x1f, 0x0, @fixed}, 0x80, &(0x7f0000000f00)=[{&(0x7f0000000ec0)=""/49, 0x31}], 0x1}, 0x80000000}, {{&(0x7f0000000f40)=@xdp, 0x80, &(0x7f00000010c0)=[{&(0x7f0000000fc0)=""/220, 0xdc}], 0x1, &(0x7f0000000300)=""/40, 0x28}, 0x100000}, {{&(0x7f0000001140)=@ieee802154, 0x80, &(0x7f00000002c0)=[{&(0x7f0000002a00)=""/253, 0xfd}], 0x1, &(0x7f00000008c0)=""/74, 0x4a}, 0x8}, {{&(0x7f00000028c0)=@ieee802154={0x24, @long}, 0x80, &(0x7f0000003c40)=[{&(0x7f0000002940)=""/172, 0xac}, {&(0x7f0000001440)=""/25, 0x19}, {&(0x7f0000003f00)=""/4096, 0x1000}, {&(0x7f0000003a00)=""/47, 0x2f}, {&(0x7f0000003a40)=""/220, 0xdc}, {&(0x7f0000003b40)=""/246, 0xf6}], 0x6}, 0xe000}], 0x7, 0x0, &(0x7f00000001c0)={0x77359400}) (async) creat(&(0x7f0000000040)='./bus\x00', 0x9) (async) ftruncate(r4, 0x800) (async) lseek(r4, 0x200, 0x2) (async) recvmmsg(r3, &(0x7f0000005580)=[{{0x0, 0x0, &(0x7f0000000840)=[{&(0x7f0000000400)=""/141, 0x8d}, {&(0x7f00000000c0)=""/5, 0x5}, {&(0x7f0000002b00)=""/204, 0xcc}, {0x0}, {&(0x7f0000005900)=""/262, 0x106}, {&(0x7f0000000800)=""/4, 0x4}], 0x6, &(0x7f00000002c0)}, 0x7e073bf1}, {{&(0x7f0000000cc0)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @multicast2}}}, 0x80, 0x0, 0x0, &(0x7f00000011c0)=""/27, 0x1b}}, {{&(0x7f0000001200)=@pppol2tpin6={0x18, 0x1, {0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, {0xa, 0x0, 0x0, @dev}}}, 0x80, &(0x7f00000015c0)=[{&(0x7f0000001280)=""/117, 0x75}, {&(0x7f0000001300)=""/230, 0xe6}, {&(0x7f0000001400)}, {&(0x7f0000000680)=""/17, 0x11}, {&(0x7f0000001480)=""/43, 0x2b}, {&(0x7f00000014c0)=""/194, 0xc2}], 0x6, &(0x7f0000001640)=""/238, 0xee}, 0x7}, {{0x0, 0x0, &(0x7f0000005080)}, 0x8}, {{&(0x7f0000005100)=@can, 0x80, &(0x7f00000054c0)=[{&(0x7f0000005180)=""/12, 0xc}, {&(0x7f00000051c0)=""/9, 0x9}, {&(0x7f00000004c0)=""/77, 0x4d}, {&(0x7f0000005280)=""/126, 0x7e}, {&(0x7f0000005300)=""/225, 0xe1}, {&(0x7f0000005400)=""/153, 0x99}], 0x6, &(0x7f0000005540)=""/36, 0x24}, 0x4}], 0x5, 0x40010002, &(0x7f00000057c0)) (async) sched_setscheduler(0x0, 0x6, &(0x7f0000000280)=0x9) (async) socket$inet_tcp(0x2, 0x1, 0x0) (async) open(&(0x7f0000000000)='./bus\x00', 0x24000, 0x0) (async) sendfile(r4, r5, 0x0, 0x1dd00) (async) 00:26:07 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x20000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) [ 944.968615] IPVS: ftp: loaded support on port[0] = 21 00:26:07 executing program 2: move_pages(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x2) (async) shutdown(0xffffffffffffffff, 0x0) (async) ioctl$DRM_IOCTL_MODE_SETCRTC(0xffffffffffffffff, 0xc06864a2, &(0x7f0000000300)={&(0x7f0000000200)=[0x0, 0x0], 0x2, 0x1, 0x6, 0x14540000, 0x0, 0x2a40, 0x3, {0x85a, 0x0, 0x6, 0x0, 0x400, 0x800, 0x800, 0x1, 0x800, 0x276, 0x1, 0x9, 0x8, 0x4, "27fec02ad7c21878c2f3b8a455be6c79c265b557f34622a36077bec5853ed0d9"}}) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0xa0, 0x0, 0x7f, 0x0, 0x0, 0x14, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x4000, 0x20000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) (async) perf_event_open(&(0x7f0000000280)={0x0, 0x80, 0x2, 0x8, 0x0, 0x0, 0x0, 0x200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1ff}, 0x4180, 0x7498, 0xffffffa5, 0x2, 0x0, 0xd0b, 0x0, 0x0, 0x0, 0x0, 0x4}, 0xffffffffffffffff, 0xd, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000000400)={0x0, 0x665, &(0x7f0000000380)=[{&(0x7f0000000180)=ANY=[@ANYBLOB="140000002300bd91000000006800000004000080edfec366b3a859b26040cd188aa6a1ca723c16ec28f1ae43f3f1a6f3888ae468740e56f5255f92fbfd06d0"], 0x14}], 0x1}, 0x0) r1 = openat$rdma_cm(0xffffffffffffff9c, 0x0, 0x2, 0x0) write$RDMA_USER_CM_CMD_CREATE_ID(r1, &(0x7f00000001c0)={0x0, 0x18, 0xfa00, {0x0, 0x0, 0x111}}, 0x20) (async) write$RDMA_USER_CM_CMD_RESOLVE_ADDR(r1, &(0x7f0000000000)={0x15, 0x110, 0xfa08, {0xffffffffffffffff, 0x0, 0x10, 0x10, 0x0, @in={0x2, 0x0, @empty}, @in={0x2, 0x0, @dev}}}, 0x118) (async) fallocate(0xffffffffffffffff, 0x0, 0x0, 0x0) socketpair$tipc(0x1e, 0x0, 0x0, &(0x7f0000000080)) 00:26:08 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x40000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) [ 945.331153] audit: type=1804 audit(1665188767.861:193): pid=32330 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir1759607675/syzkaller.B9LP3d/1369/bus" dev="sda1" ino=14134 res=1 00:26:08 executing program 3: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) (async) sched_setscheduler(0x0, 0x2, &(0x7f0000000000)=0x6) (async) r0 = getpid() sched_setaffinity(0x0, 0x8, &(0x7f0000000240)=0x2) (async) sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) (async) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) (async) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = socket(0x10, 0x2, 0x0) write(r3, &(0x7f0000000100)="1c0000001a009b8a14000000ff0000adf87e28000000000000000000", 0x1c) (async) recvmmsg(r3, &(0x7f0000003cc0)=[{{&(0x7f0000003e80)=@llc={0x1a, 0x0, 0x0, 0x0, 0x0, 0x0, @dev}, 0x80, &(0x7f0000000080)=[{&(0x7f0000001740)=""/4096, 0x1000}, {&(0x7f00000006c0)=""/228, 0xe4}, {&(0x7f0000002740)=""/209, 0xd1}], 0x3}, 0x8}, {{&(0x7f0000000340)=@ieee802154={0x24, @short}, 0x80, &(0x7f00000003c0)=[{&(0x7f00000005c0)=""/98, 0x62}, {&(0x7f00000009c0)=""/157, 0x9d}], 0x2, &(0x7f0000000640)=""/4, 0x4}, 0x400}, {{&(0x7f0000000a80)=@rxrpc=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x0, @remote}}, 0x80, &(0x7f00000007c0)=[{&(0x7f0000000b00)=""/130, 0x82}, {&(0x7f0000000bc0)=""/237, 0xed}, {&(0x7f0000000d40)=""/227, 0xe3}], 0x3}, 0x4}, {{&(0x7f0000000e40)=@l2={0x1f, 0x0, @fixed}, 0x80, &(0x7f0000000f00)=[{&(0x7f0000000ec0)=""/49, 0x31}], 0x1}, 0x80000000}, {{&(0x7f0000000f40)=@xdp, 0x80, &(0x7f00000010c0)=[{&(0x7f0000000fc0)=""/220, 0xdc}], 0x1, &(0x7f0000000300)=""/40, 0x28}, 0x100000}, {{&(0x7f0000001140)=@ieee802154, 0x80, &(0x7f00000002c0)=[{&(0x7f0000002a00)=""/253, 0xfd}], 0x1, &(0x7f00000008c0)=""/74, 0x4a}, 0x8}, {{&(0x7f00000028c0)=@ieee802154={0x24, @long}, 0x80, &(0x7f0000003c40)=[{&(0x7f0000002940)=""/172, 0xac}, {&(0x7f0000001440)=""/25, 0x19}, {&(0x7f0000003f00)=""/4096, 0x1000}, {&(0x7f0000003a00)=""/47, 0x2f}, {&(0x7f0000003a40)=""/220, 0xdc}, {&(0x7f0000003b40)=""/246, 0xf6}], 0x6}, 0xe000}], 0x7, 0x0, &(0x7f00000001c0)={0x77359400}) r4 = creat(&(0x7f0000000040)='./bus\x00', 0x9) ftruncate(r4, 0x800) lseek(r4, 0x200, 0x2) (async) recvmmsg(r3, &(0x7f0000005580)=[{{0x0, 0x0, &(0x7f0000000840)=[{&(0x7f0000000400)=""/141, 0x8d}, {&(0x7f00000000c0)=""/5, 0x5}, {&(0x7f0000002b00)=""/204, 0xcc}, {0x0}, {&(0x7f0000005900)=""/262, 0x106}, {&(0x7f0000000800)=""/4, 0x4}], 0x6, &(0x7f00000002c0)}, 0x7e073bf1}, {{&(0x7f0000000cc0)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @multicast2}}}, 0x80, 0x0, 0x0, &(0x7f00000011c0)=""/27, 0x1b}}, {{&(0x7f0000001200)=@pppol2tpin6={0x18, 0x1, {0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, {0xa, 0x0, 0x0, @dev}}}, 0x80, &(0x7f00000015c0)=[{&(0x7f0000001280)=""/117, 0x75}, {&(0x7f0000001300)=""/230, 0xe6}, {&(0x7f0000001400)}, {&(0x7f0000000680)=""/17, 0x11}, {&(0x7f0000001480)=""/43, 0x2b}, {&(0x7f00000014c0)=""/194, 0xc2}], 0x6, &(0x7f0000001640)=""/238, 0xee}, 0x7}, {{0x0, 0x0, &(0x7f0000005080)}, 0x8}, {{&(0x7f0000005100)=@can, 0x80, &(0x7f00000054c0)=[{&(0x7f0000005180)=""/12, 0xc}, {&(0x7f00000051c0)=""/9, 0x9}, {&(0x7f00000004c0)=""/77, 0x4d}, {&(0x7f0000005280)=""/126, 0x7e}, {&(0x7f0000005300)=""/225, 0xe1}, {&(0x7f0000005400)=""/153, 0x99}], 0x6, &(0x7f0000005540)=""/36, 0x24}, 0x4}], 0x5, 0x40010002, &(0x7f00000057c0)) (async) sched_setscheduler(0x0, 0x6, &(0x7f0000000280)=0x9) (async) socket$inet_tcp(0x2, 0x1, 0x0) (async) r5 = open(&(0x7f0000000000)='./bus\x00', 0x24000, 0x0) sendfile(r4, r5, 0x0, 0x1dd00) [ 945.426231] audit: type=1800 audit(1665188767.861:194): pid=32330 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=14134 res=0 00:26:08 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000140)=ANY=[@ANYBLOB="7f454c460000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000001200000000000000ebabea53a76eb856020e06a45865951e188ec42aaf6f02bb128cea593b7e906f6c2a3212d803d5e299195b8c343da7dec40ba481acad12d45d2c7445242651a87326291535ad67f66e906d310f48bdd70229aac83bbd2f68c8aed673230030c94c963c308f13c69daa71bee6d0d42088cc04de7e2b800698150ba4d3"], 0x78) 00:26:08 executing program 4: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000200)='cgroup.controllers\x00', 0x26e1, 0x0) openat$cgroup_root(0xffffffffffffff9c, &(0x7f00000002c0)='./cgroup/syz1\x00', 0x200002, 0x0) r1 = bpf$PROG_LOAD(0x5, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000040)={&(0x7f0000000080)='sched_switch\x00', r1}, 0x10) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x40082404, &(0x7f0000000240)=0x1) perf_event_open(0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0xa}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000080)={0x3, 0x3, &(0x7f0000000280)=ANY=[@ANYBLOB="85000062c963ee00"/28], &(0x7f0000000000)='GPL\x00', 0x5, 0x487, &(0x7f000000cf3d)=""/195}, 0x48) bpf$BPF_PROG_TEST_RUN(0xa, 0x0, 0x0) process_vm_writev(0x0, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) perf_event_open(&(0x7f0000000300)={0x5, 0x80, 0x1, 0x81, 0x4, 0x0, 0x0, 0x7, 0x400, 0x4, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x2, 0x1, @perf_config_ext={0xec, 0xffffffffffff0000}, 0x0, 0x4, 0x5, 0x0, 0x3, 0x1, 0x1ff, 0x0, 0x5, 0x0, 0xfffffffffffffffb}, 0x0, 0x0, 0xffffffffffffffff, 0x8) perf_event_open(&(0x7f0000000180)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xbfffffffffffffff, 0xffffffffffffffff, 0x0) r2 = gettid() process_vm_writev(r2, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) ioctl$AUTOFS_DEV_IOCTL_EXPIRE(r0, 0xc018937c, &(0x7f0000000380)=ANY=[@ANYBLOB="010000000100000018000000cb676b33aa9893a4306aa77549a72e3c0d177d8fc315b985ea3da3953be96217289fef095723d09729f62109b95ffe283f75024ca1fc58cb67dfe87ff5f3a672cdbe57d23d0dc3b79a1c8a8144186c6fc8ad929a55ebac39d6c74f89753ac02412e2b497c605313b2708c5cdf365aa6d9f9b0a7bdfbca5c1eba7263cbfe3359753860287165ba1f44663f1c66708705a4ce30e2fd1f54ee850dc9410d8fd7bbb54bf52f67f52d20805bda733b5a3c63c7784c897f9dc3b7d25fd2d3b070400000000000000659f6e", @ANYRES32=r0, @ANYBLOB="01000000000000002e2f66696c653000"]) perf_event_open(0x0, r2, 0x3, r3, 0x1) bpf$MAP_CREATE(0x0, &(0x7f00000010c0)=@base={0x17, 0x3, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x9, '\x00', 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x4}, 0x48) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x6611, 0x0) r4 = syz_clone(0x40000000, 0x0, 0x0, 0x0, &(0x7f0000001200), 0x0) perf_event_open(0x0, r4, 0x6, 0xffffffffffffffff, 0x0) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000200)='cgroup.controllers\x00', 0x26e1, 0x0) (async) openat$cgroup_root(0xffffffffffffff9c, &(0x7f00000002c0)='./cgroup/syz1\x00', 0x200002, 0x0) (async) bpf$PROG_LOAD(0x5, 0x0, 0x0) (async) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000040)={&(0x7f0000000080)='sched_switch\x00', r1}, 0x10) (async) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x40082404, &(0x7f0000000240)=0x1) (async) perf_event_open(0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0) (async) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0xa}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) (async) bpf$PROG_LOAD(0x5, &(0x7f0000000080)={0x3, 0x3, &(0x7f0000000280)=ANY=[@ANYBLOB="85000062c963ee00"/28], &(0x7f0000000000)='GPL\x00', 0x5, 0x487, &(0x7f000000cf3d)=""/195}, 0x48) (async) bpf$BPF_PROG_TEST_RUN(0xa, 0x0, 0x0) (async) process_vm_writev(0x0, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) (async) perf_event_open(&(0x7f0000000300)={0x5, 0x80, 0x1, 0x81, 0x4, 0x0, 0x0, 0x7, 0x400, 0x4, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x2, 0x1, @perf_config_ext={0xec, 0xffffffffffff0000}, 0x0, 0x4, 0x5, 0x0, 0x3, 0x1, 0x1ff, 0x0, 0x5, 0x0, 0xfffffffffffffffb}, 0x0, 0x0, 0xffffffffffffffff, 0x8) (async) perf_event_open(&(0x7f0000000180)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xbfffffffffffffff, 0xffffffffffffffff, 0x0) (async) gettid() (async) process_vm_writev(r2, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) (async) ioctl$AUTOFS_DEV_IOCTL_EXPIRE(r0, 0xc018937c, &(0x7f0000000380)=ANY=[@ANYBLOB="010000000100000018000000cb676b33aa9893a4306aa77549a72e3c0d177d8fc315b985ea3da3953be96217289fef095723d09729f62109b95ffe283f75024ca1fc58cb67dfe87ff5f3a672cdbe57d23d0dc3b79a1c8a8144186c6fc8ad929a55ebac39d6c74f89753ac02412e2b497c605313b2708c5cdf365aa6d9f9b0a7bdfbca5c1eba7263cbfe3359753860287165ba1f44663f1c66708705a4ce30e2fd1f54ee850dc9410d8fd7bbb54bf52f67f52d20805bda733b5a3c63c7784c897f9dc3b7d25fd2d3b070400000000000000659f6e", @ANYRES32=r0, @ANYBLOB="01000000000000002e2f66696c653000"]) (async) perf_event_open(0x0, r2, 0x3, r3, 0x1) (async) bpf$MAP_CREATE(0x0, &(0x7f00000010c0)=@base={0x17, 0x3, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x9, '\x00', 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x4}, 0x48) (async) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x6611, 0x0) (async) syz_clone(0x40000000, 0x0, 0x0, 0x0, &(0x7f0000001200), 0x0) (async) perf_event_open(0x0, r4, 0x6, 0xffffffffffffffff, 0x0) (async) [ 945.645464] audit: type=1804 audit(1665188768.231:195): pid=32401 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir1759607675/syzkaller.B9LP3d/1370/bus" dev="sda1" ino=14676 res=1 [ 945.742599] audit: type=1800 audit(1665188768.231:196): pid=32401 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=14676 res=0 [ 945.862430] IPVS: ftp: loaded support on port[0] = 21 00:26:08 executing program 2: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000000)=0x6) r0 = getpid() sched_setaffinity(0x0, 0x8, &(0x7f0000000240)=0x2) sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = socket(0x10, 0x2, 0x0) write(r3, &(0x7f0000000100)="1c0000001a009b8a14000000ff0000adf87e28000000000000000000", 0x1c) recvmmsg(r3, &(0x7f0000003cc0)=[{{&(0x7f0000003e80)=@llc={0x1a, 0x0, 0x0, 0x0, 0x0, 0x0, @dev}, 0x80, &(0x7f0000000080)=[{&(0x7f0000001740)=""/4096, 0x1000}, {&(0x7f00000006c0)=""/228, 0xe4}, {&(0x7f0000002740)=""/209, 0xd1}], 0x3}, 0x8}, {{&(0x7f0000000340)=@ieee802154={0x24, @short}, 0x80, &(0x7f00000003c0)=[{&(0x7f00000005c0)=""/98, 0x62}, {&(0x7f00000009c0)=""/157, 0x9d}], 0x2, &(0x7f0000000640)=""/4, 0x4}, 0x400}, {{&(0x7f0000000a80)=@rxrpc=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x0, @remote}}, 0x80, &(0x7f00000007c0)=[{&(0x7f0000000b00)=""/130, 0x82}, {&(0x7f0000000bc0)=""/237, 0xed}, {&(0x7f0000000d40)=""/227, 0xe3}], 0x3}, 0x4}, {{&(0x7f0000000e40)=@l2={0x1f, 0x0, @fixed}, 0x80, &(0x7f0000000f00)=[{&(0x7f0000000ec0)=""/49, 0x31}], 0x1}, 0x80000000}, {{&(0x7f0000000f40)=@xdp, 0x80, &(0x7f00000010c0)=[{&(0x7f0000000fc0)=""/220, 0xdc}], 0x1, &(0x7f0000000300)=""/40, 0x28}, 0x100000}, {{&(0x7f0000001140)=@ieee802154, 0x80, &(0x7f00000002c0)=[{&(0x7f0000002a00)=""/253, 0xfd}], 0x1, &(0x7f00000008c0)=""/74, 0x4a}, 0x8}, {{&(0x7f00000028c0)=@ieee802154={0x24, @long}, 0x80, &(0x7f0000003c40)=[{&(0x7f0000002940)=""/172, 0xac}, {&(0x7f0000001440)=""/25, 0x19}, {&(0x7f0000003f00)=""/4096, 0x1000}, {&(0x7f0000003a00)=""/47, 0x2f}, {&(0x7f0000003a40)=""/220, 0xdc}, {&(0x7f0000003b40)=""/246, 0xf6}], 0x6}, 0xe000}], 0x7, 0x0, &(0x7f00000001c0)={0x77359400}) r4 = creat(&(0x7f0000000040)='./bus\x00', 0x9) ftruncate(r4, 0x800) lseek(r4, 0x200, 0x2) recvmmsg(r3, &(0x7f0000005580)=[{{0x0, 0x0, &(0x7f0000000840)=[{&(0x7f0000000400)=""/141, 0x8d}, {&(0x7f00000000c0)=""/5, 0x5}, {&(0x7f0000002b00)=""/204, 0xcc}, {0x0}, {&(0x7f0000005900)=""/262, 0x106}, {&(0x7f0000000800)=""/4, 0x4}], 0x6, &(0x7f00000002c0)}, 0x7e073bf1}, {{&(0x7f0000000cc0)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @multicast2}}}, 0x80, 0x0, 0x0, &(0x7f00000011c0)=""/27, 0x1b}}, {{&(0x7f0000001200)=@pppol2tpin6={0x18, 0x1, {0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, {0xa, 0x0, 0x0, @dev}}}, 0x80, &(0x7f00000015c0)=[{&(0x7f0000001280)=""/117, 0x75}, {&(0x7f0000001300)=""/230, 0xe6}, {&(0x7f0000001400)}, {&(0x7f0000000680)=""/17, 0x11}, {&(0x7f0000001480)=""/43, 0x2b}, {&(0x7f00000014c0)=""/194, 0xc2}], 0x6, &(0x7f0000001640)=""/238, 0xee}, 0x7}, {{0x0, 0x0, &(0x7f0000005080)}, 0x8}, {{&(0x7f0000005100)=@can, 0x80, &(0x7f00000054c0)=[{&(0x7f0000005180)=""/12, 0xc}, {&(0x7f00000051c0)=""/9, 0x9}, {&(0x7f00000004c0)=""/77, 0x4d}, {&(0x7f0000005280)=""/126, 0x7e}, {&(0x7f0000005300)=""/225, 0xe1}, {&(0x7f0000005400)=""/153, 0x99}], 0x6, &(0x7f0000005540)=""/36, 0x24}, 0x4}], 0x5, 0x40010002, &(0x7f00000057c0)) sched_setscheduler(0x0, 0x6, &(0x7f0000000280)=0x9) socket$inet_tcp(0x2, 0x1, 0x0) r5 = open(&(0x7f0000000000)='./bus\x00', 0x24000, 0x0) sendfile(r4, r5, 0x0, 0x1dd00) 00:26:08 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x80ffff00000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:08 executing program 5: r0 = getpgid(0x0) r1 = perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0xfffffffffffffffe}, r0, 0x0, 0xffffffffffffffff, 0x0) r2 = openat$procfs(0xffffffffffffff9c, &(0x7f00000000c0)='/proc/crypto\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x4, 0x7f, 0x6, 0x40, 0x0, 0x5, 0x8110, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x2, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x0, @perf_bp={&(0x7f0000000000), 0x3}, 0x0, 0x400, 0xdb, 0x0, 0xfffffffffffffffb, 0x6, 0xa99, 0x0, 0x7fff, 0x0, 0x45928529}, 0xffffffffffffffff, 0x8, r2, 0x0) (async) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) (async) r4 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r4, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB='\x00\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090000000000000000001f000000"], 0x14}}, 0x0) (async) mmap(&(0x7f0000ffb000/0x2000)=nil, 0x2000, 0x9, 0x40010, r4, 0x3f9bb000) r5 = socket$inet_smc(0x2b, 0x1, 0x0) dup3(r1, r5, 0x0) 00:26:08 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) (async) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) (async) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000140)=ANY=[@ANYBLOB="7f454c460000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000001200000000000000ebabea53a76eb856020e06a45865951e188ec42aaf6f02bb128cea593b7e906f6c2a3212d803d5e299195b8c343da7dec40ba481acad12d45d2c7445242651a87326291535ad67f66e906d310f48bdd70229aac83bbd2f68c8aed673230030c94c963c308f13c69daa71bee6d0d42088cc04de7e2b800698150ba4d3"], 0x78) 00:26:08 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x100000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:09 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) (async) write$binfmt_elf64(r1, &(0x7f0000000140)=ANY=[@ANYBLOB="7f454c460000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000001200000000000000ebabea53a76eb856020e06a45865951e188ec42aaf6f02bb128cea593b7e906f6c2a3212d803d5e299195b8c343da7dec40ba481acad12d45d2c7445242651a87326291535ad67f66e906d310f48bdd70229aac83bbd2f68c8aed673230030c94c963c308f13c69daa71bee6d0d42088cc04de7e2b800698150ba4d3"], 0x78) [ 946.900474] audit: type=1804 audit(1665188769.251:197): pid=32462 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir1461121287/syzkaller.UEi920/1631/bus" dev="sda1" ino=14933 res=1 [ 946.946593] audit: type=1800 audit(1665188769.251:198): pid=32462 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.2" name="bus" dev="sda1" ino=14933 res=0 00:26:09 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x200000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:09 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000000)={0x2, 0x4e20, @multicast1}, 0x10) sendto$inet(r0, 0x0, 0x0, 0x20020094, &(0x7f00000018c0)={0x2, 0x4e20}, 0x10) r1 = dup3(0xffffffffffffffff, 0xffffffffffffffff, 0x80000) setsockopt$SO_BINDTODEVICE(r1, 0x1, 0x19, &(0x7f0000000080)='lo\x00', 0x10) r2 = bpf$MAP_CREATE(0x0, &(0x7f0000000200)=@base={0xf, 0x4, 0x4, 0x12}, 0x48) bpf$MAP_UPDATE_ELEM(0x2, &(0x7f0000000280)={r2, &(0x7f0000000340), &(0x7f0000000040)=@tcp=r0}, 0x20) recvmmsg(r0, &(0x7f0000000f00)=[{{&(0x7f0000000100)=@ll={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @multicast}, 0x80, &(0x7f0000000480)=[{&(0x7f00000002c0)=""/216, 0xd8}, {0x0}, {&(0x7f00000003c0)=""/156, 0x9c}], 0x3, &(0x7f00000004c0)=""/140, 0x8c}}], 0x7ffffffe, 0x40, 0x0) r3 = bpf$MAP_CREATE(0x0, 0x0, 0x0) bpf$MAP_LOOKUP_BATCH(0x18, &(0x7f00000000c0)={&(0x7f0000001900)="e2f6d29c8781a94fa1aaa56b1fb95ba75655c9a48827bd638714d8ef", 0x0, &(0x7f0000000180), 0x0, 0x0, r3}, 0x38) 00:26:09 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) prctl$PR_SET_MM_MAP(0x23, 0xe, &(0x7f00000001c0)={&(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffa000/0x3000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000ffc000/0x1000)=nil, &(0x7f0000ffb000/0x4000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000140)="d0284d009cb9e8bdcb2e6ba3bbdd0e60ab6cbeded52bd557b6fdefb544f39b2b7340f06f4c901d85924a60707635aa608f02b6856c3dd03e823adcfda13a01a45759", 0x42, r0}, 0x68) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) pipe(&(0x7f0000000040)) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) [ 947.254325] nf_conntrack: default automatic helper assignment has been turned off for security reasons and CT-based firewall rule not found. Use the iptables CT target to attach helpers instead. 00:26:09 executing program 3: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) ioctl$KVM_SET_USER_MEMORY_REGION(r1, 0x4020ae46, &(0x7f0000000400)={0x0, 0x0, 0x0, 0x20002000, &(0x7f0000000000/0x2000)=nil}) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) r3 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r3, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) syz_kvm_setup_cpu$x86(r3, r2, &(0x7f0000000000/0x18000)=nil, &(0x7f0000000040)=[@textreal={0x8, &(0x7f0000000000)="ff01ba2000b000ee0f01c46665650f017d4b650f01c3650f22c666b9e502000066b8f4ff000066ba000000000f306765f2660f0f32ae640f01c90f09", 0x3c}], 0x1, 0x0, 0x0, 0x0) ioctl$KVM_RUN(r2, 0xae80, 0x0) 00:26:09 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x300000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:09 executing program 4: mkdir(&(0x7f0000000040)='./file0\x00', 0x0) r0 = add_key$keyring(0x0, &(0x7f00000000c0)={'syz', 0x1}, 0x0, 0x0, 0xffffffffffffffff) r1 = perf_event_open(&(0x7f00000007c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) writev(0xffffffffffffffff, 0x0, 0x0) r2 = add_key(&(0x7f0000000240)='big_key\x00', &(0x7f0000000280)={'syz', 0x3}, &(0x7f0000019a40)="4195738ac28ccd83aa93c4ecacdaca3d34104be4cc5531c4091facf7f777321e84e49e039122a2d1cf7fea6a02aac8944c27ba038156bc10c0f7a6b26fbf382f67959d856600881f0e692c60f12ace775aab8d775dc2586454918a0db1811f5e8086f1a9805166c870b8387d380d5115af5841dad21f629e05f4b51e362c46b58a7dc2855c5189bff60d02c05ba67c297aa0ad05b93b1ee2fffae13fe5764d4e2a214e15093841b1551d518a669fa94e8918bfdd6573d5c0275a9b91ddb843775f78574891e03697f6ca290be6599b671093898a82e7905ed7c7fd8e8b422ebf12e5b543885596fc5c305d497407ffe73bd543f79c983f0807ae7e13fb5053fd7a07dddf8ec739418b59d67219f008f540161cec3bfd1b3097aad497248b221d572a9eb1bad6d921fcdcfdfacf8d1e392635168747056ec8a3fc45b3027293a517d50ea789294f132f2392919dc81ba5eb02e27e116cc300000000b6c0e39688425a3cb17d35f4b1eec0a37193f233c6655c6f40c09b4ea04c8880a431a8274127d56c3c8cab73a5fcf2b604b83658344e323eeedb0b283b0b3616236e904a42fed9fc8f4c131b047bfd5d7586e6a28032a4584fd5933472ce49dfdc99976166bb37eb1679b22249a222ffab17948dd6cc6f23f42ecd32a980ab8fc7c7d2da1a91f1db1187066c144bcbdb46240b7ef7ed28da4a358295b6104e4c60b09654e79f766e19e44174e94fa41d358d3dd901c060a06a388727be1092a37c0015695b1363ed018e724947983aa6b5974daf6388547cdacbd44a1282c3b9130cbf9536c29a523980b9e4328d1a7c0de8b636d7dfdee36434125948b1d802d5d143645c3a5f8da50adeef6e4f715361908a20cb998d3e0907aef9fdd19bb79be8c510b8aa04600163636c1d1f36f3834ffa3c7369e1d8ed9348bc339da2a525c4f165c0caebb7a4ee632a37a43897084e3c07a5ed8b505a51a4777095060b0ff6a6442206244dd9a13b5ba52b07c718e9eaad10befd12be35dc50283d584035d75e4917548ff58045b88d29b6826ceb6d44fb54ba3ef7944da6e86c0f2d0bc0bd725aa9193b3de4837634ead361d9b2ff5ae4de005f53d48cba029b43eb35fbedd0b5397918a9324b6e1f1d88399d8ad69b7d79e89ded6fe81fd1200f95c831f8c60dc1483e97052f61d0a643df0c2e1b0ba7d00b0692efd1bfc1ece10c2e785e3cb3b0dfbdbd722b6e53e5a2884b1cc5d939a572564bc8a2260e8718230878edb3a877f5c585f4373ef8e0e1cff5dacf96862906ff37eec18ba706d22b101965eaf5f5e29f544977896117e25ceb572f3443eddf9651c2ac69c911b21fd69e59ee57ebe4c549ff2a3dcd904656663039789f022a6caa7f76640e75efdba82dabacf8c0112bd4e62a3a9e69a9824c1af45cf86b307d9749937dd08b6ef49860cda5da7bb886f92db7cd43a869aa646a6da291a75ff28c4d728b1377b8e80233b33e724a60c0a015ec75cd86af04a4bd43964d8f7ba781a99d0cd7ff7e189fc91801655cb1b60e6bc3af747655341deceadbed3d76bdfae92389cc87c417e0f58f3fbcc56ff347467a20773146a81090ff42bbb5383d74108028f5fa532c647746054c312e2e4c085f58d93bec6da7c2bfd99fc59c1631cc71110acc2bf352b994e2a246be3cc1d240fa0c60eb04b92a9673d2ac2bba7f322ddbbd74712b0ec459050586523bd0b0505174a701206e47f2bb7fe20caf5ed73d33447b89432802e7d4606512e217aedf78c871e10cfbdf202efbf3fd8495b6be18cde726dc1fefc01921e9d1f15c8301376c33b5a698d0f7d5f317835d74857e121fe820d93f6b757c9938ec81f9b19a4b0d4ed35d1309fbcb285cf7717e9e27aaaba9d7d742fcfd786eacd993fb119e1d52908ca7ce2135046fa95805704c6258fd1b5fc1434af7ab99609820d73627080d43bcaeeb42ce423e17aa4df3a6994ead3133e2ecfbc6fa308c6b71b78cbab273641970b49e15d0dbe7aea716eaf6cf40f90d0d7d3d8bf1d165d25d5f6f6376416b9dd13731c5c2fdadee8e48c76430cccb21d8e6c6590ed10f60dc9a3cefa0072bc7", 0x5c9, 0xfffffffffffffffd) keyctl$read(0xb, r2, &(0x7f0000000a40)=""/102400, 0x19000) keyctl$search(0xa, r2, &(0x7f0000000100)='id_resolver\x00', &(0x7f0000000200)={'syz', 0x2}, 0x0) perf_event_open(&(0x7f000001d000)={0x0, 0x80, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0xd}, 0x2, 0x0, 0x0, 0x0, 0xfffffffffffffffe, 0x0, 0x6, 0x0, 0x1000}, 0x0, 0xffffffffffffffff, r1, 0x0) r3 = add_key(&(0x7f0000000380)='id_resolver\x00', &(0x7f0000000400)={'syz', 0x3}, &(0x7f0000000440)="e09e6dda135ac7c467011f", 0xb, 0x0) keyctl$search(0xa, r0, &(0x7f00000002c0)='rxrpc_s\x00', &(0x7f0000000340)={'syz', 0x1}, r3) mount(0x0, &(0x7f0000000000)='./file0\x00', &(0x7f0000000140)='cpuset\x00', 0x0, 0x0) r4 = open(&(0x7f0000000080)='./file0\x00', 0x0, 0x0) r5 = openat$rfkill(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000680)={&(0x7f00000005c0)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000640)={&(0x7f0000000600)=@getnexthop={0x2c, 0x6a, 0x400, 0x70bd29, 0x25dfdbff, {}, [@NHA_GROUPS={0x4}, @NHA_MASTER={0x8}, @NHA_FDB={0x4}, @NHA_FDB={0x4}]}, 0x2c}, 0x1, 0x0, 0x0, 0x200000b0}, 0x4) add_key$fscrypt_provisioning(&(0x7f0000000480), &(0x7f00000004c0)={'syz', 0x0}, &(0x7f0000000500)={0x3, 0x0, @b}, 0x48, 0x0) write$rfkill(r5, &(0x7f0000000040)={0x0, 0x0, 0x3}, 0x8) r6 = openat$cgroup_int(r4, &(0x7f00000001c0)='cpuset.sched_load_balance\x00', 0x2, 0x0) dup3(r6, r4, 0x0) writev(r4, &(0x7f0000000300)=[{&(0x7f00000000c0)='0', 0x1}, {&(0x7f00000003c0)='7', 0x1}], 0x2) ioctl$VIDIOC_DECODER_CMD(0xffffffffffffffff, 0xc0485660, &(0x7f00000006c0)={0x1, 0x1, @raw_data=[0x9, 0x20, 0x430, 0x0, 0x5, 0xbed8, 0x5, 0x1, 0xba, 0x0, 0x4, 0xb1, 0x1ae4, 0x1, 0x3, 0x5]}) 00:26:10 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) prctl$PR_SET_MM_MAP(0x23, 0xe, &(0x7f00000001c0)={&(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffa000/0x3000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000ffc000/0x1000)=nil, &(0x7f0000ffb000/0x4000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000140)="d0284d009cb9e8bdcb2e6ba3bbdd0e60ab6cbeded52bd557b6fdefb544f39b2b7340f06f4c901d85924a60707635aa608f02b6856c3dd03e823adcfda13a01a45759", 0x42, r0}, 0x68) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) pipe(&(0x7f0000000040)) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)) (async) prctl$PR_SET_MM_MAP(0x23, 0xe, &(0x7f00000001c0)={&(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffa000/0x3000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000ffc000/0x1000)=nil, &(0x7f0000ffb000/0x4000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000140)="d0284d009cb9e8bdcb2e6ba3bbdd0e60ab6cbeded52bd557b6fdefb544f39b2b7340f06f4c901d85924a60707635aa608f02b6856c3dd03e823adcfda13a01a45759", 0x42, r0}, 0x68) (async) pipe(&(0x7f00000000c0)) (async) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) (async) pipe(&(0x7f0000000040)) (async) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) (async) write$binfmt_misc(r3, 0x0, 0x4) (async) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) (async) 00:26:10 executing program 3: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) ioctl$KVM_SET_USER_MEMORY_REGION(r1, 0x4020ae46, &(0x7f0000000400)={0x0, 0x0, 0x0, 0x20002000, &(0x7f0000000000/0x2000)=nil}) (async) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) (async) r3 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r3, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) (async) syz_kvm_setup_cpu$x86(r3, r2, &(0x7f0000000000/0x18000)=nil, &(0x7f0000000040)=[@textreal={0x8, &(0x7f0000000000)="ff01ba2000b000ee0f01c46665650f017d4b650f01c3650f22c666b9e502000066b8f4ff000066ba000000000f306765f2660f0f32ae640f01c90f09", 0x3c}], 0x1, 0x0, 0x0, 0x0) ioctl$KVM_RUN(r2, 0xae80, 0x0) [ 947.537201] new mount options do not match the existing superblock, will be ignored 00:26:10 executing program 5: r0 = getpgid(0x0) r1 = perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0xfffffffffffffffe}, r0, 0x0, 0xffffffffffffffff, 0x0) r2 = openat$procfs(0xffffffffffffff9c, &(0x7f00000000c0)='/proc/crypto\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x4, 0x7f, 0x6, 0x40, 0x0, 0x5, 0x8110, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x2, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x0, @perf_bp={&(0x7f0000000000), 0x3}, 0x0, 0x400, 0xdb, 0x0, 0xfffffffffffffffb, 0x6, 0xa99, 0x0, 0x7fff, 0x0, 0x45928529}, 0xffffffffffffffff, 0x8, r2, 0x0) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r4 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r4, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB='\x00\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090000000000000000001f000000"], 0x14}}, 0x0) mmap(&(0x7f0000ffb000/0x2000)=nil, 0x2000, 0x9, 0x40010, r4, 0x3f9bb000) r5 = socket$inet_smc(0x2b, 0x1, 0x0) dup3(r1, r5, 0x0) getpgid(0x0) (async) perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0xfffffffffffffffe}, r0, 0x0, 0xffffffffffffffff, 0x0) (async) openat$procfs(0xffffffffffffff9c, &(0x7f00000000c0)='/proc/crypto\x00', 0x0, 0x0) (async) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x4, 0x7f, 0x6, 0x40, 0x0, 0x5, 0x8110, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x2, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x0, @perf_bp={&(0x7f0000000000), 0x3}, 0x0, 0x400, 0xdb, 0x0, 0xfffffffffffffffb, 0x6, 0xa99, 0x0, 0x7fff, 0x0, 0x45928529}, 0xffffffffffffffff, 0x8, r2, 0x0) (async) syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) (async) socket$nl_generic(0x10, 0x3, 0x10) (async) sendmsg$NL80211_CMD_GET_REG(r4, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB='\x00\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090000000000000000001f000000"], 0x14}}, 0x0) (async) mmap(&(0x7f0000ffb000/0x2000)=nil, 0x2000, 0x9, 0x40010, r4, 0x3f9bb000) (async) socket$inet_smc(0x2b, 0x1, 0x0) (async) dup3(r1, r5, 0x0) (async) 00:26:10 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x400000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:10 executing program 3: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) ioctl$KVM_SET_USER_MEMORY_REGION(r1, 0x4020ae46, &(0x7f0000000400)={0x0, 0x0, 0x0, 0x20002000, &(0x7f0000000000/0x2000)=nil}) (async) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) (async) r3 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r3, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) (async) syz_kvm_setup_cpu$x86(r3, r2, &(0x7f0000000000/0x18000)=nil, &(0x7f0000000040)=[@textreal={0x8, &(0x7f0000000000)="ff01ba2000b000ee0f01c46665650f017d4b650f01c3650f22c666b9e502000066b8f4ff000066ba000000000f306765f2660f0f32ae640f01c90f09", 0x3c}], 0x1, 0x0, 0x0, 0x0) (async) ioctl$KVM_RUN(r2, 0xae80, 0x0) 00:26:10 executing program 4: mkdir(&(0x7f0000000040)='./file0\x00', 0x0) (async) r0 = add_key$keyring(0x0, &(0x7f00000000c0)={'syz', 0x1}, 0x0, 0x0, 0xffffffffffffffff) r1 = perf_event_open(&(0x7f00000007c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) writev(0xffffffffffffffff, 0x0, 0x0) (async) r2 = add_key(&(0x7f0000000240)='big_key\x00', &(0x7f0000000280)={'syz', 0x3}, &(0x7f0000019a40)="4195738ac28ccd83aa93c4ecacdaca3d34104be4cc5531c4091facf7f777321e84e49e039122a2d1cf7fea6a02aac8944c27ba038156bc10c0f7a6b26fbf382f67959d856600881f0e692c60f12ace775aab8d775dc2586454918a0db1811f5e8086f1a9805166c870b8387d380d5115af5841dad21f629e05f4b51e362c46b58a7dc2855c5189bff60d02c05ba67c297aa0ad05b93b1ee2fffae13fe5764d4e2a214e15093841b1551d518a669fa94e8918bfdd6573d5c0275a9b91ddb843775f78574891e03697f6ca290be6599b671093898a82e7905ed7c7fd8e8b422ebf12e5b543885596fc5c305d497407ffe73bd543f79c983f0807ae7e13fb5053fd7a07dddf8ec739418b59d67219f008f540161cec3bfd1b3097aad497248b221d572a9eb1bad6d921fcdcfdfacf8d1e392635168747056ec8a3fc45b3027293a517d50ea789294f132f2392919dc81ba5eb02e27e116cc300000000b6c0e39688425a3cb17d35f4b1eec0a37193f233c6655c6f40c09b4ea04c8880a431a8274127d56c3c8cab73a5fcf2b604b83658344e323eeedb0b283b0b3616236e904a42fed9fc8f4c131b047bfd5d7586e6a28032a4584fd5933472ce49dfdc99976166bb37eb1679b22249a222ffab17948dd6cc6f23f42ecd32a980ab8fc7c7d2da1a91f1db1187066c144bcbdb46240b7ef7ed28da4a358295b6104e4c60b09654e79f766e19e44174e94fa41d358d3dd901c060a06a388727be1092a37c0015695b1363ed018e724947983aa6b5974daf6388547cdacbd44a1282c3b9130cbf9536c29a523980b9e4328d1a7c0de8b636d7dfdee36434125948b1d802d5d143645c3a5f8da50adeef6e4f715361908a20cb998d3e0907aef9fdd19bb79be8c510b8aa04600163636c1d1f36f3834ffa3c7369e1d8ed9348bc339da2a525c4f165c0caebb7a4ee632a37a43897084e3c07a5ed8b505a51a4777095060b0ff6a6442206244dd9a13b5ba52b07c718e9eaad10befd12be35dc50283d584035d75e4917548ff58045b88d29b6826ceb6d44fb54ba3ef7944da6e86c0f2d0bc0bd725aa9193b3de4837634ead361d9b2ff5ae4de005f53d48cba029b43eb35fbedd0b5397918a9324b6e1f1d88399d8ad69b7d79e89ded6fe81fd1200f95c831f8c60dc1483e97052f61d0a643df0c2e1b0ba7d00b0692efd1bfc1ece10c2e785e3cb3b0dfbdbd722b6e53e5a2884b1cc5d939a572564bc8a2260e8718230878edb3a877f5c585f4373ef8e0e1cff5dacf96862906ff37eec18ba706d22b101965eaf5f5e29f544977896117e25ceb572f3443eddf9651c2ac69c911b21fd69e59ee57ebe4c549ff2a3dcd904656663039789f022a6caa7f76640e75efdba82dabacf8c0112bd4e62a3a9e69a9824c1af45cf86b307d9749937dd08b6ef49860cda5da7bb886f92db7cd43a869aa646a6da291a75ff28c4d728b1377b8e80233b33e724a60c0a015ec75cd86af04a4bd43964d8f7ba781a99d0cd7ff7e189fc91801655cb1b60e6bc3af747655341deceadbed3d76bdfae92389cc87c417e0f58f3fbcc56ff347467a20773146a81090ff42bbb5383d74108028f5fa532c647746054c312e2e4c085f58d93bec6da7c2bfd99fc59c1631cc71110acc2bf352b994e2a246be3cc1d240fa0c60eb04b92a9673d2ac2bba7f322ddbbd74712b0ec459050586523bd0b0505174a701206e47f2bb7fe20caf5ed73d33447b89432802e7d4606512e217aedf78c871e10cfbdf202efbf3fd8495b6be18cde726dc1fefc01921e9d1f15c8301376c33b5a698d0f7d5f317835d74857e121fe820d93f6b757c9938ec81f9b19a4b0d4ed35d1309fbcb285cf7717e9e27aaaba9d7d742fcfd786eacd993fb119e1d52908ca7ce2135046fa95805704c6258fd1b5fc1434af7ab99609820d73627080d43bcaeeb42ce423e17aa4df3a6994ead3133e2ecfbc6fa308c6b71b78cbab273641970b49e15d0dbe7aea716eaf6cf40f90d0d7d3d8bf1d165d25d5f6f6376416b9dd13731c5c2fdadee8e48c76430cccb21d8e6c6590ed10f60dc9a3cefa0072bc7", 0x5c9, 0xfffffffffffffffd) keyctl$read(0xb, r2, &(0x7f0000000a40)=""/102400, 0x19000) keyctl$search(0xa, r2, &(0x7f0000000100)='id_resolver\x00', &(0x7f0000000200)={'syz', 0x2}, 0x0) perf_event_open(&(0x7f000001d000)={0x0, 0x80, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0xd}, 0x2, 0x0, 0x0, 0x0, 0xfffffffffffffffe, 0x0, 0x6, 0x0, 0x1000}, 0x0, 0xffffffffffffffff, r1, 0x0) r3 = add_key(&(0x7f0000000380)='id_resolver\x00', &(0x7f0000000400)={'syz', 0x3}, &(0x7f0000000440)="e09e6dda135ac7c467011f", 0xb, 0x0) keyctl$search(0xa, r0, &(0x7f00000002c0)='rxrpc_s\x00', &(0x7f0000000340)={'syz', 0x1}, r3) (async) mount(0x0, &(0x7f0000000000)='./file0\x00', &(0x7f0000000140)='cpuset\x00', 0x0, 0x0) (async) r4 = open(&(0x7f0000000080)='./file0\x00', 0x0, 0x0) (async) r5 = openat$rfkill(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000680)={&(0x7f00000005c0)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000640)={&(0x7f0000000600)=@getnexthop={0x2c, 0x6a, 0x400, 0x70bd29, 0x25dfdbff, {}, [@NHA_GROUPS={0x4}, @NHA_MASTER={0x8}, @NHA_FDB={0x4}, @NHA_FDB={0x4}]}, 0x2c}, 0x1, 0x0, 0x0, 0x200000b0}, 0x4) (async) add_key$fscrypt_provisioning(&(0x7f0000000480), &(0x7f00000004c0)={'syz', 0x0}, &(0x7f0000000500)={0x3, 0x0, @b}, 0x48, 0x0) write$rfkill(r5, &(0x7f0000000040)={0x0, 0x0, 0x3}, 0x8) r6 = openat$cgroup_int(r4, &(0x7f00000001c0)='cpuset.sched_load_balance\x00', 0x2, 0x0) dup3(r6, r4, 0x0) (async) writev(r4, &(0x7f0000000300)=[{&(0x7f00000000c0)='0', 0x1}, {&(0x7f00000003c0)='7', 0x1}], 0x2) (async) ioctl$VIDIOC_DECODER_CMD(0xffffffffffffffff, 0xc0485660, &(0x7f00000006c0)={0x1, 0x1, @raw_data=[0x9, 0x20, 0x430, 0x0, 0x5, 0xbed8, 0x5, 0x1, 0xba, 0x0, 0x4, 0xb1, 0x1ae4, 0x1, 0x3, 0x5]}) 00:26:10 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) prctl$PR_SET_MM_MAP(0x23, 0xe, &(0x7f00000001c0)={&(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffa000/0x3000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000ffc000/0x1000)=nil, &(0x7f0000ffb000/0x4000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000140)="d0284d009cb9e8bdcb2e6ba3bbdd0e60ab6cbeded52bd557b6fdefb544f39b2b7340f06f4c901d85924a60707635aa608f02b6856c3dd03e823adcfda13a01a45759", 0x42, r0}, 0x68) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) pipe(&(0x7f0000000040)) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)) (async) prctl$PR_SET_MM_MAP(0x23, 0xe, &(0x7f00000001c0)={&(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffe000/0x2000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffa000/0x3000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000ffc000/0x1000)=nil, &(0x7f0000ffb000/0x4000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000140)="d0284d009cb9e8bdcb2e6ba3bbdd0e60ab6cbeded52bd557b6fdefb544f39b2b7340f06f4c901d85924a60707635aa608f02b6856c3dd03e823adcfda13a01a45759", 0x42, r0}, 0x68) (async) pipe(&(0x7f00000000c0)) (async) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) (async) pipe(&(0x7f0000000040)) (async) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) (async) write$binfmt_misc(r3, 0x0, 0x4) (async) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) (async) 00:26:10 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) (async) r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000000)={0x2, 0x4e20, @multicast1}, 0x10) sendto$inet(r0, 0x0, 0x0, 0x20020094, &(0x7f00000018c0)={0x2, 0x4e20}, 0x10) (async) r1 = dup3(0xffffffffffffffff, 0xffffffffffffffff, 0x80000) setsockopt$SO_BINDTODEVICE(r1, 0x1, 0x19, &(0x7f0000000080)='lo\x00', 0x10) (async) r2 = bpf$MAP_CREATE(0x0, &(0x7f0000000200)=@base={0xf, 0x4, 0x4, 0x12}, 0x48) bpf$MAP_UPDATE_ELEM(0x2, &(0x7f0000000280)={r2, &(0x7f0000000340), &(0x7f0000000040)=@tcp=r0}, 0x20) (async) recvmmsg(r0, &(0x7f0000000f00)=[{{&(0x7f0000000100)=@ll={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @multicast}, 0x80, &(0x7f0000000480)=[{&(0x7f00000002c0)=""/216, 0xd8}, {0x0}, {&(0x7f00000003c0)=""/156, 0x9c}], 0x3, &(0x7f00000004c0)=""/140, 0x8c}}], 0x7ffffffe, 0x40, 0x0) (async) r3 = bpf$MAP_CREATE(0x0, 0x0, 0x0) bpf$MAP_LOOKUP_BATCH(0x18, &(0x7f00000000c0)={&(0x7f0000001900)="e2f6d29c8781a94fa1aaa56b1fb95ba75655c9a48827bd638714d8ef", 0x0, &(0x7f0000000180), 0x0, 0x0, r3}, 0x38) 00:26:10 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x500000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:10 executing program 4: mkdir(&(0x7f0000000040)='./file0\x00', 0x0) r0 = add_key$keyring(0x0, &(0x7f00000000c0)={'syz', 0x1}, 0x0, 0x0, 0xffffffffffffffff) (async) r1 = perf_event_open(&(0x7f00000007c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) (async) writev(0xffffffffffffffff, 0x0, 0x0) r2 = add_key(&(0x7f0000000240)='big_key\x00', &(0x7f0000000280)={'syz', 0x3}, &(0x7f0000019a40)="4195738ac28ccd83aa93c4ecacdaca3d34104be4cc5531c4091facf7f777321e84e49e039122a2d1cf7fea6a02aac8944c27ba038156bc10c0f7a6b26fbf382f67959d856600881f0e692c60f12ace775aab8d775dc2586454918a0db1811f5e8086f1a9805166c870b8387d380d5115af5841dad21f629e05f4b51e362c46b58a7dc2855c5189bff60d02c05ba67c297aa0ad05b93b1ee2fffae13fe5764d4e2a214e15093841b1551d518a669fa94e8918bfdd6573d5c0275a9b91ddb843775f78574891e03697f6ca290be6599b671093898a82e7905ed7c7fd8e8b422ebf12e5b543885596fc5c305d497407ffe73bd543f79c983f0807ae7e13fb5053fd7a07dddf8ec739418b59d67219f008f540161cec3bfd1b3097aad497248b221d572a9eb1bad6d921fcdcfdfacf8d1e392635168747056ec8a3fc45b3027293a517d50ea789294f132f2392919dc81ba5eb02e27e116cc300000000b6c0e39688425a3cb17d35f4b1eec0a37193f233c6655c6f40c09b4ea04c8880a431a8274127d56c3c8cab73a5fcf2b604b83658344e323eeedb0b283b0b3616236e904a42fed9fc8f4c131b047bfd5d7586e6a28032a4584fd5933472ce49dfdc99976166bb37eb1679b22249a222ffab17948dd6cc6f23f42ecd32a980ab8fc7c7d2da1a91f1db1187066c144bcbdb46240b7ef7ed28da4a358295b6104e4c60b09654e79f766e19e44174e94fa41d358d3dd901c060a06a388727be1092a37c0015695b1363ed018e724947983aa6b5974daf6388547cdacbd44a1282c3b9130cbf9536c29a523980b9e4328d1a7c0de8b636d7dfdee36434125948b1d802d5d143645c3a5f8da50adeef6e4f715361908a20cb998d3e0907aef9fdd19bb79be8c510b8aa04600163636c1d1f36f3834ffa3c7369e1d8ed9348bc339da2a525c4f165c0caebb7a4ee632a37a43897084e3c07a5ed8b505a51a4777095060b0ff6a6442206244dd9a13b5ba52b07c718e9eaad10befd12be35dc50283d584035d75e4917548ff58045b88d29b6826ceb6d44fb54ba3ef7944da6e86c0f2d0bc0bd725aa9193b3de4837634ead361d9b2ff5ae4de005f53d48cba029b43eb35fbedd0b5397918a9324b6e1f1d88399d8ad69b7d79e89ded6fe81fd1200f95c831f8c60dc1483e97052f61d0a643df0c2e1b0ba7d00b0692efd1bfc1ece10c2e785e3cb3b0dfbdbd722b6e53e5a2884b1cc5d939a572564bc8a2260e8718230878edb3a877f5c585f4373ef8e0e1cff5dacf96862906ff37eec18ba706d22b101965eaf5f5e29f544977896117e25ceb572f3443eddf9651c2ac69c911b21fd69e59ee57ebe4c549ff2a3dcd904656663039789f022a6caa7f76640e75efdba82dabacf8c0112bd4e62a3a9e69a9824c1af45cf86b307d9749937dd08b6ef49860cda5da7bb886f92db7cd43a869aa646a6da291a75ff28c4d728b1377b8e80233b33e724a60c0a015ec75cd86af04a4bd43964d8f7ba781a99d0cd7ff7e189fc91801655cb1b60e6bc3af747655341deceadbed3d76bdfae92389cc87c417e0f58f3fbcc56ff347467a20773146a81090ff42bbb5383d74108028f5fa532c647746054c312e2e4c085f58d93bec6da7c2bfd99fc59c1631cc71110acc2bf352b994e2a246be3cc1d240fa0c60eb04b92a9673d2ac2bba7f322ddbbd74712b0ec459050586523bd0b0505174a701206e47f2bb7fe20caf5ed73d33447b89432802e7d4606512e217aedf78c871e10cfbdf202efbf3fd8495b6be18cde726dc1fefc01921e9d1f15c8301376c33b5a698d0f7d5f317835d74857e121fe820d93f6b757c9938ec81f9b19a4b0d4ed35d1309fbcb285cf7717e9e27aaaba9d7d742fcfd786eacd993fb119e1d52908ca7ce2135046fa95805704c6258fd1b5fc1434af7ab99609820d73627080d43bcaeeb42ce423e17aa4df3a6994ead3133e2ecfbc6fa308c6b71b78cbab273641970b49e15d0dbe7aea716eaf6cf40f90d0d7d3d8bf1d165d25d5f6f6376416b9dd13731c5c2fdadee8e48c76430cccb21d8e6c6590ed10f60dc9a3cefa0072bc7", 0x5c9, 0xfffffffffffffffd) keyctl$read(0xb, r2, &(0x7f0000000a40)=""/102400, 0x19000) (async) keyctl$search(0xa, r2, &(0x7f0000000100)='id_resolver\x00', &(0x7f0000000200)={'syz', 0x2}, 0x0) (async) perf_event_open(&(0x7f000001d000)={0x0, 0x80, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0xd}, 0x2, 0x0, 0x0, 0x0, 0xfffffffffffffffe, 0x0, 0x6, 0x0, 0x1000}, 0x0, 0xffffffffffffffff, r1, 0x0) r3 = add_key(&(0x7f0000000380)='id_resolver\x00', &(0x7f0000000400)={'syz', 0x3}, &(0x7f0000000440)="e09e6dda135ac7c467011f", 0xb, 0x0) keyctl$search(0xa, r0, &(0x7f00000002c0)='rxrpc_s\x00', &(0x7f0000000340)={'syz', 0x1}, r3) (async) mount(0x0, &(0x7f0000000000)='./file0\x00', &(0x7f0000000140)='cpuset\x00', 0x0, 0x0) (async) r4 = open(&(0x7f0000000080)='./file0\x00', 0x0, 0x0) (async) r5 = openat$rfkill(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) (async) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000680)={&(0x7f00000005c0)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000640)={&(0x7f0000000600)=@getnexthop={0x2c, 0x6a, 0x400, 0x70bd29, 0x25dfdbff, {}, [@NHA_GROUPS={0x4}, @NHA_MASTER={0x8}, @NHA_FDB={0x4}, @NHA_FDB={0x4}]}, 0x2c}, 0x1, 0x0, 0x0, 0x200000b0}, 0x4) add_key$fscrypt_provisioning(&(0x7f0000000480), &(0x7f00000004c0)={'syz', 0x0}, &(0x7f0000000500)={0x3, 0x0, @b}, 0x48, 0x0) (async) write$rfkill(r5, &(0x7f0000000040)={0x0, 0x0, 0x3}, 0x8) (async) r6 = openat$cgroup_int(r4, &(0x7f00000001c0)='cpuset.sched_load_balance\x00', 0x2, 0x0) dup3(r6, r4, 0x0) (async) writev(r4, &(0x7f0000000300)=[{&(0x7f00000000c0)='0', 0x1}, {&(0x7f00000003c0)='7', 0x1}], 0x2) ioctl$VIDIOC_DECODER_CMD(0xffffffffffffffff, 0xc0485660, &(0x7f00000006c0)={0x1, 0x1, @raw_data=[0x9, 0x20, 0x430, 0x0, 0x5, 0xbed8, 0x5, 0x1, 0xba, 0x0, 0x4, 0xb1, 0x1ae4, 0x1, 0x3, 0x5]}) [ 947.861125] new mount options do not match the existing superblock, will be ignored 00:26:10 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x600000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:10 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) (async) r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000000)={0x2, 0x4e20, @multicast1}, 0x10) (async) sendto$inet(r0, 0x0, 0x0, 0x20020094, &(0x7f00000018c0)={0x2, 0x4e20}, 0x10) r1 = dup3(0xffffffffffffffff, 0xffffffffffffffff, 0x80000) setsockopt$SO_BINDTODEVICE(r1, 0x1, 0x19, &(0x7f0000000080)='lo\x00', 0x10) (async) r2 = bpf$MAP_CREATE(0x0, &(0x7f0000000200)=@base={0xf, 0x4, 0x4, 0x12}, 0x48) bpf$MAP_UPDATE_ELEM(0x2, &(0x7f0000000280)={r2, &(0x7f0000000340), &(0x7f0000000040)=@tcp=r0}, 0x20) recvmmsg(r0, &(0x7f0000000f00)=[{{&(0x7f0000000100)=@ll={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @multicast}, 0x80, &(0x7f0000000480)=[{&(0x7f00000002c0)=""/216, 0xd8}, {0x0}, {&(0x7f00000003c0)=""/156, 0x9c}], 0x3, &(0x7f00000004c0)=""/140, 0x8c}}], 0x7ffffffe, 0x40, 0x0) (async) r3 = bpf$MAP_CREATE(0x0, 0x0, 0x0) bpf$MAP_LOOKUP_BATCH(0x18, &(0x7f00000000c0)={&(0x7f0000001900)="e2f6d29c8781a94fa1aaa56b1fb95ba75655c9a48827bd638714d8ef", 0x0, &(0x7f0000000180), 0x0, 0x0, r3}, 0x38) 00:26:10 executing program 3: sendmsg$NFNL_MSG_COMPAT_GET(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f00000001c0)=ANY=[@ANYBLOB="480b010100000000000000000500000108000240000000050800010047504c000800024000160001080001007b5d27000a002c262700000d08000340000000000000000074394df034f2929560d3cecd886ebd2a0e93ccbeed5ea0585d8881c4dfcea914d8895c94f3ed2959ec9bf7f17e4fada24f3a0c50ea7fd2b8a9ccddb7dc7502dc47e8892f24cb1ebc76de894d3648447410f12572669653a152ea37357a2240dc"], 0x48}, 0x1, 0x0, 0x0, 0x4040080}, 0x20008011) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0x3, 0x6, &(0x7f0000000000)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x69, 0x11, 0x10}, [@func={0x85, 0x0, 0x1, 0x0, 0x2}, @call={0x85, 0x0, 0x0, 0x5}, @exit={0x95, 0x0, 0x23}], {0x95, 0x0, 0x5a5}}, &(0x7f0000000080)='GPL\x00', 0x0, 0xf8, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x6, 0x0, 0x6, 0x10, 0x0}, 0xffffffffffffffe7) 00:26:10 executing program 4: rt_sigprocmask(0x0, &(0x7f0000000100)={[0x2000000fffffffc]}, 0x0, 0x8) rt_sigtimedwait(&(0x7f0000000080)={[0x5406]}, &(0x7f0000000180), &(0x7f00000000c0)={0x0, 0x3938700}, 0x8) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000280)={0xffffffffffffffff}) close(r0) socket$inet(0x2, 0x5, 0x0) io_submit(0x0, 0x4b, &(0x7f0000000040)=[&(0x7f0000000000)={0x0, 0x0, 0x0, 0x1000800000000001, 0x0, r0, 0x0, 0x12f}]) sendfile(0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x0) [ 947.994338] new mount options do not match the existing superblock, will be ignored 00:26:10 executing program 5: r0 = perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x6, 0x8}, 0x2800, 0x0, 0x0, 0x8, 0x0, 0xfffffffc}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) r1 = socket$inet_smc(0x2b, 0x1, 0x0) setsockopt$inet_tcp_TCP_REPAIR_QUEUE(r1, 0x6, 0x14, &(0x7f0000000000), 0x4) ioctl$sock_inet_SIOCDARP(r1, 0x8953, &(0x7f00000000c0)={{0x2, 0x4e22, @loopback}, {0x306, @dev={'\xaa\xaa\xaa\xaa\xaa', 0x3c}}, 0x8, {0x2, 0x4e23, @multicast2}, 'bridge0\x00'}) sendto$inet(r1, &(0x7f00000003c0)="24865e9cfa3f63b0fa8bdfbe73713cb8e51ed61012b387d3a9d99bba3289a50ebc590be4e76db8a9c02ac664b7fdc9f2372c9526d9682652d380fa4a4b6a323e205ffa4943413b1bee88fd5cd044c1560bb20e9871893c01af571858eb6e614ab3674c2c1f579a370ed5a9dff65491cd5787a8e4f2a39e4547cb026b5f5b154ea1c093a110e5e733ba225e179586a289f23119db23a24367998671e4a566477f580d97d9523f106a91310f694f3c3f9b977fedd48b412c594192fe381f6dd3e885fdc0649b58d9f9b4df105cc82f4f9318ecda50a10749c20e72f42e6836b927ea29c357eab0a3e992d8116441e630243ff51f2bad93b3a5a1d4697a3d0dec6143fb5de2d2be769f23b522391063ea74fd27c7146a866e77ed18aa4db2cd68daaa6da76dea0ddbd896b386d440c681b3ae65a41436f8c327b134f71876f55606edce25639380805e242f2549d9a625d6285750e082299d29866ff88bf3f196795c740498230019c981b9ca454826e3855fab11cac77842895da7bc04b78bde02b1f9e441aa87ec6b3ce9b199e35e56035aa1328de5c1057e7e04ac281659f4de96b7a1960bd3e778efeee6b02459ebaa6763783f83542a8d4f8a5dc612b6013ae6165662a65e56e594fee1a43ea459a5ff6adfe3af8628b6b397960cac668198379b97f3bcbca82116fa8b01c55481bc5b3ccc8a1f2726f8262174dfef520c8c4a50a157cb6b841e4c4b7f18a850f1ee993d554fba45961fc1b55c2d4ccb85f36ed3b07fc3926de9ec01034b1a5372d4246351575e0dd01ea32c9d33a413925e08ef62e48148f94390e3e6ada3d363a712f9e270b41d8eee20c939c71f7fd84a5d86f34a20e5da97b4652d6cfc2fa97c973384174cabd3c3a21d74fdceed359fde6a90f9387f2202b3230b7301817e162e4720beaad1dac0ec3633fc04159c776255eb76cf21ddf3067c607c6cd7b00091a54f131f47d497cf0747d11f85a49e11b38f97961e8c3862f969541aa48358c18efa480544a49db09769400053f2fa65930bf0c996b9e2d912ae2b924fef74c95077bb95002442a787de30670dd3dac9f2151ec92f92b82a368bc41c2eeda40b37242c98f7c5c5b04a839e857c3877eb59a1f0a8943e4afed111245d9b5e9ddf482451860c547c5be1306c81d47b5cfde7bb3c0702f762f7b491df1ad538d253281b0f7835ed9a17f95d24ba9034a7a270dbb52f2abcb2a34202492a09f3d572259b5ed08e5dc8b05fb2e039650a53e93fa06f242784697628f2b4c350a1e305827ec6f1fba6d336ab3c816857876be454aab33e2b2ffeef12800da32aecc5ceb3366d9f6c4a6463ff07546d03510c74963d7313391156509a4c8ff8030b034a237e560fd8a8e9df1ffd21dff9a73552a6d0a5d0f2b0e08662304d9f57574d9c9821f1b2cf1437e6863ac485872e862b6be6838e7d7813308d38028a52b73a3d41319973f4bce14387fd9e7a1d69d4bb629aca8beedd59c391efc143df2137e2cb3d5076d04af1e195debe8bdf339639773ce00e2f2e6a76e6e3f6c00390d699ca71da642efb1e846c94813127618322f57fe77bfc533ae597110574ac7ecde4f7bf96fac54a7e6700704e14affc61a922a45ff03e784acab3aacd34ac392eb73b96ff7cf4462796145c96c856aea9d36767000feb3e36b61d58e054ccff9a64c7c45fd0cd1950c729d99f8c7c75494cc2fd56537a04ffc9916b0484177fe83ff8ad8a1ee6fcb373c5981b7c2da3e96eda1cb6d631da5b0deb93ffa25e10d67c72657a76aab29d17ba5f35633bcebaa2870ef0128fc21bb34702a79b3687bf2b7b7e06cb6314471a785f57882ff0c9eeccd8c8b8ff2d1fdbacdb1842fe762b62b5ab9f0f2f8c8ef12dd2ef1435d987caedbc07e72fb224038fc1710d7b53fde6b032d1e13271d6f255174a0493dd5ac9aee93b09f6e725551030b0b01fcb6dbb472118df40c2048569359782ac236a2786e8672a390f484f7925ceea734cdcaacd742a6c45bad32bfa1f2ca1af08371672779e0274573ddb28f3766b012901d2ee77df35fd865630144213708973a10a407cf38a8d7fbd93ca7203a97f51e76ee720cee5b042b45e7c71a4698e6b6928e067d1b1a25073dc66795b6b1e10a86ceca10eb17c041107496dfc572ac9f52a2725a4a5a6a9a2af97c7025f4f009d6dd9f5ae5c5df3261abb9b70aaed42fb5669ee913fdcb965e26707575a93333aec6c23e8a160e80d3fd8cebb11ea33c8d2325b7b92c01013f0217a71466c83761fecdf6ed6fc6799aa3d5446f83b017e68cd34c04e5945a2642b57a29dbbce1a9bfa485c30c6d72aad52aeaacd19f387d05512ad07bc9a8696742a7976a3e4053565d65f37752af1de2e37b0ad1e098553e6ae825a9aaf31b90ff0df2f3186a202884cdbccfd93dcaa70a9259dcd844cf652d5f2dc89386ced421ab6c0ee575899cad677b9d40be7bd041987b3a5e1fb0a1347110c5dfa0c670849a650a3bd23a5bee0e4c6f8cae78738fc42b21ac8e310d4edb1faf0b3bb2f6029c2c856c42ebcef86f671bff671cb8837537ed4994c606a2f4828605cbdb785bf20882ad582f303f30d783c902d2a7a838484fd7da1150922f9197bbcf6f8d2d8701922c0b03a37add226445d27cd4f56ddad152626fd2ddcf2fd99171be0ade5f07d7ffb2dfae6d4ff2462a1601ac483e0d18e85bce674c3005c5de5b2d6896af1a94445563c7bf421dd934b8bb368643faf4f2baff3f26dbe8fea992e819f9f452b001bf03685b890b5cb71a286d15af4730d8b4f51ebc356d1b422e8ecda205945693b4093186ab4339e8dbdd523d99c63e3597ede813100b0c81d5b60e2d203fb00828bc97e3db356c73026078735eb5659dbd3951c5de2591d35a60f7baf6844db1b9ad288b422af8047e4cf71739a4b3cf7cf6e39e21183f17c8a3c3e8ce0d3d0bb0734803815f96b15ba3a292a29aef394fd635bd5a5b0c9af6c93a4d5efa295a6ea8eb717d4761e8dc33f65ce2f9ae317ebd75fdb5278d0e70cbe9552b62dadb293fff2dc394ff1bf32d67c1e8fddc07b5196e97813dcddc783c8221bdd7304c97128095c6461456a248ba4447cdbdc0c178998f686e1eda73bad2edaaaab32c54a9bd36043baf683446cd5e697812d7f84bd6a4606e9fb6ed5cdde73f7b04127274a9948f41ca9ded03a9a85ee7338f00b95a6c67171cd252331ff9d4f4048e98fe4b5e16976dbbafb8a98937f220486d5727801984e06f8ea36f867651dddfbdd5be2f82ae0ecf9df16b9a04c36c92712eca77b90ace7ec3526ea283389a294919945b09ce68fd83a8e55c64086b4cbc51a7b924573f4787cc384d07acc6c1739bc443f9b9d7ab037a490e688096b79b6be7b6811c529dabc23692897855f11d3da5e564d116f42b295f6e9d08ac6fa12fe2f3b049aabae77b7969ca6bab3426f5589f6f1506c0bf2fe4ca6a0dbf1a6de7a4b0375df1d3b62f663155e9e9c8d464e376a1dcb3f14758b040c87bfd158c37878c55eddd21164f251c663177d5a7a6b926a6a698b5c899950be448536fd0e9b0d9aa451015bb559a58b2e32b98f2d868ac8a305bc59d98b953f4c9f6bf8dd81517370530f0a3b9a29debf803df4bc5b2a08b763bfa97fbb90edda72a92c4cc91f38c9de03d4e6ba3613e5b67109bb2a565cae2f39a4c159ff868c17e2217213cb46616403eb391c6059c140083f9544582fe90ca41b7f04f96f26d4a83fac55192799b9d320c0b254f92b6425054b3e729e17910c0da92e970373d37c2f800dbd70da3e8ef97ef122d6bca146cd2f933744346faf66e9a0e1bf4b9a4eb1a6ca2a2ea7baffd99f96d43b493681db3495921f79946de07ac8c592b042b68765a62a89e2eeb24bd30addba3935726558b654b1154f9d04e8e110e1a42393cff063e3a64748310e24abb52e32494ea72618f771fbe9bb26e75a9e22670b3ed019c67d11aa91acf706076640eb7e65b593b0e1952e66d754761180c15fec00c2b227a130f1b2d295775d2e879e1c9ad077e612135572bcd30f813f24871ea77d9e61f0c8cd7c545cd6c1f64fc6d501710627f435bc3d1ffe75d2b0e07bc5c6ddb10d46f07df0058e51776b5e8c03d0869b8f4d430785b2b3367953a12ff48c37f2f2b9034afe7e42349457cb8c16670ec9c6bd59566917c887d3b7635c706c0ce8aa267cb728e72b296d705c8cb8b1886eea0ac6cc216b367d2f7d5c44b5af389ab0fea3e5a26e2a04e4f15c170f548962c3fd779b523065e1c9f3ae44ff30856387f1594bc0fe15bc7e7eb79c576602247a5ad4f6b353230c7052560a23ef2d22711b6d5118251e1d4b6ffcc00398851f50309bdce9a521830b14edffbdd7282e0b76407301783b47c8d8e4d9dd467a2d44920b9a7d0e5b2fc81b730dd41aa96c8580b66557ce712cb50c6e5740aed504292994cd89d52de86b0042ee32cddef2579b6489cc475a999eb16f60b9ba8338dc15fe543d99844ae16446d135301c4fbac817210a5a996d6d8c3957a1fe4762494e683283a23f9b331ae3e26f38d921950c1fbe595551e5e72d78a464b0015141da0f895b43672f22dd973134f75ede8712a37f9f422be9d228a8c06abafa770d4e1535f2b018589be86430943fd4962033d7b52a4bae56049fb04f8bcd5f189acb26c8fa27e8b59e3dca52ea090ccd4fa8018ff58cf3b9e0ac9c8c8cff24c3b4919401bff9a0e7e2dd203f768bfd2c49da13898f35792c61c54d2372222fdf82bd8b901006601c58a97c076cac37dd10ebd954cb8b3307e5f74ebd5c7b40c164f67ca0217db6cccad774799510c89b813ad3257a81dc354eabecc054e8608ed4ecc9ca6021be6c1960105b607b6daada0c07b027d310e1796902626b06a80361ce1d8adedd6a1aad921358ff1e9ca952111be487e078009183e1b8e3e03e0115cac95cdd58ca2395c7a83e6a42620f973257ff8eea95de9b81699b01ba92ed2bcb1929325279a53c73589c4ca1aced30109814b334e4acaf66747b97a2089b54798a41cdf3d2820d67fc21bc97b60a3f17834fb026505526fbca82047377f7d8157422fa2c0a22363df1513cc59ad4c158773770e9fd84d83ff5309300eec129c07665b9f41642200f0a4d53f786b6d0db084c8f25c2df9a1045d46d6fd0b137e5e18da7ef98a4593b0172ad8a9eb2ddd14894c53f9a013bc79877121a2f18cc1d17bccb9c04e7493caba9987d166c04145fcb439c688644fd39eda2dba8b23de6a684bf8202d8fdec76d67c14722d8418337459500a1f271be95406d422c6d3e7dfa5bab5c8e401d3711485c2d3959c795395a338f169d5042861f9ee7b3e249587959812347643e1529fcb1e0a4db543ed2483cbc0e63275caf99b9403f63c99431cb7f3cf18c79349e4b371c49da77438e3961ed8baaf860b61d2bee8f8e44ea0df9317567332bd2cfe796351fe097c9514642615dc4bdffe5b0c373ca723d78d69e88842996c3d6f8a6f67970ef50076a0b1684b1be2d05f951bb3102082f7a4037377db611d646230dd7a3d205a3874d71a9aa87950f6c88e71d14d524472d3088e65277ddf5c060f030f4779f3dfa6a6f244c865ad97601ecbc75c982990a470d1a4b8c030c005a69ad9b8b99d163a7210f289e7cf4baad352bdd6d62400b954f20f1cd4f79b947f64ce70a400a60c5a2696eb1790ee94c6fce650a7826644b4b661a40ac9e56089dc6699564b2b46ae68a9f4addf4544bea673216b1bd3cdcb02eee56e7946ceca17373d56", 0x1000, 0x20000010, &(0x7f0000000180)={0x2, 0x4e21, @loopback}, 0x10) r2 = socket(0x2b, 0x800, 0x80000000) getsockopt$inet_tcp_buf(r2, 0x6, 0xd, &(0x7f0000000040)=""/122, &(0x7f0000000140)=0x7a) dup3(r0, r1, 0x0) 00:26:10 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x700000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:10 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r2, 0x0, 0x10000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000003c0)=[{&(0x7f0000000140)="00eab5523a9daf9d4bfd5138fd9e519d5771ac281796dca17530bda33222da542fc068151c461bc22582ad30742833f52261c4658d06c3a32056131b205d0a814d7e53df01034782c8d6f028719996fc6c47cd6a62de236afb8aec4886baf1b0d499cabb2a15b503f4f98ee0648db079db30f46107c0c7c9856a6f50819d5faf08b464e04f53f116bbd903efcaec3954f231d08f53dfe344acc00c9018a19fc38958b317", 0xa4}], 0x0, 0x8) write$binfmt_misc(r2, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) 00:26:10 executing program 3: sendmsg$NFNL_MSG_COMPAT_GET(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f00000001c0)=ANY=[@ANYBLOB="480b010100000000000000000500000108000240000000050800010047504c000800024000160001080001007b5d27000a002c262700000d08000340000000000000000074394df034f2929560d3cecd886ebd2a0e93ccbeed5ea0585d8881c4dfcea914d8895c94f3ed2959ec9bf7f17e4fada24f3a0c50ea7fd2b8a9ccddb7dc7502dc47e8892f24cb1ebc76de894d3648447410f12572669653a152ea37357a2240dc"], 0x48}, 0x1, 0x0, 0x0, 0x4040080}, 0x20008011) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0x3, 0x6, &(0x7f0000000000)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x69, 0x11, 0x10}, [@func={0x85, 0x0, 0x1, 0x0, 0x2}, @call={0x85, 0x0, 0x0, 0x5}, @exit={0x95, 0x0, 0x23}], {0x95, 0x0, 0x5a5}}, &(0x7f0000000080)='GPL\x00', 0x0, 0xf8, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x6, 0x0, 0x6, 0x10, 0x0}, 0xffffffffffffffe7) sendmsg$NFNL_MSG_COMPAT_GET(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f00000001c0)=ANY=[@ANYBLOB="480b010100000000000000000500000108000240000000050800010047504c000800024000160001080001007b5d27000a002c262700000d08000340000000000000000074394df034f2929560d3cecd886ebd2a0e93ccbeed5ea0585d8881c4dfcea914d8895c94f3ed2959ec9bf7f17e4fada24f3a0c50ea7fd2b8a9ccddb7dc7502dc47e8892f24cb1ebc76de894d3648447410f12572669653a152ea37357a2240dc"], 0x48}, 0x1, 0x0, 0x0, 0x4040080}, 0x20008011) (async) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0x3, 0x6, &(0x7f0000000000)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x69, 0x11, 0x10}, [@func={0x85, 0x0, 0x1, 0x0, 0x2}, @call={0x85, 0x0, 0x0, 0x5}, @exit={0x95, 0x0, 0x23}], {0x95, 0x0, 0x5a5}}, &(0x7f0000000080)='GPL\x00', 0x0, 0xf8, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x6, 0x0, 0x6, 0x10, 0x0}, 0xffffffffffffffe7) (async) 00:26:10 executing program 4: rt_sigprocmask(0x0, &(0x7f0000000100)={[0x2000000fffffffc]}, 0x0, 0x8) (async) rt_sigtimedwait(&(0x7f0000000080)={[0x5406]}, &(0x7f0000000180), &(0x7f00000000c0)={0x0, 0x3938700}, 0x8) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000280)={0xffffffffffffffff}) close(r0) (async) socket$inet(0x2, 0x5, 0x0) (async) io_submit(0x0, 0x4b, &(0x7f0000000040)=[&(0x7f0000000000)={0x0, 0x0, 0x0, 0x1000800000000001, 0x0, r0, 0x0, 0x12f}]) (async, rerun: 32) sendfile(0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x0) (rerun: 32) 00:26:11 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x800000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:11 executing program 2: openat$rfkill(0xffffffffffffff9c, 0x0, 0x408000, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x40, 0x0) setrlimit(0xb, &(0x7f0000000100)={0x5846cb3c, 0x8200}) sched_setscheduler(0x0, 0x0, &(0x7f0000000000)=0x5) getpid() sched_setaffinity(0x0, 0x8, &(0x7f0000000080)=0x1) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff}) connect$unix(r0, 0x0, 0x0) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) recvmmsg(r0, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r1 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) getresgid(&(0x7f0000000040), &(0x7f0000000180)=0x0, &(0x7f0000000240)) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000280)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r1, @ANYBLOB=',rootmode=000000000000100040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=r2]) 00:26:11 executing program 3: sendmsg$NFNL_MSG_COMPAT_GET(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f00000001c0)=ANY=[@ANYBLOB="480b010100000000000000000500000108000240000000050800010047504c000800024000160001080001007b5d27000a002c262700000d08000340000000000000000074394df034f2929560d3cecd886ebd2a0e93ccbeed5ea0585d8881c4dfcea914d8895c94f3ed2959ec9bf7f17e4fada24f3a0c50ea7fd2b8a9ccddb7dc7502dc47e8892f24cb1ebc76de894d3648447410f12572669653a152ea37357a2240dc"], 0x48}, 0x1, 0x0, 0x0, 0x4040080}, 0x20008011) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0x3, 0x6, &(0x7f0000000000)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x69, 0x11, 0x10}, [@func={0x85, 0x0, 0x1, 0x0, 0x2}, @call={0x85, 0x0, 0x0, 0x5}, @exit={0x95, 0x0, 0x23}], {0x95, 0x0, 0x5a5}}, &(0x7f0000000080)='GPL\x00', 0x0, 0xf8, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x6, 0x0, 0x6, 0x10, 0x0}, 0xffffffffffffffe7) sendmsg$NFNL_MSG_COMPAT_GET(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f00000001c0)=ANY=[@ANYBLOB="480b010100000000000000000500000108000240000000050800010047504c000800024000160001080001007b5d27000a002c262700000d08000340000000000000000074394df034f2929560d3cecd886ebd2a0e93ccbeed5ea0585d8881c4dfcea914d8895c94f3ed2959ec9bf7f17e4fada24f3a0c50ea7fd2b8a9ccddb7dc7502dc47e8892f24cb1ebc76de894d3648447410f12572669653a152ea37357a2240dc"], 0x48}, 0x1, 0x0, 0x0, 0x4040080}, 0x20008011) (async) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0x3, 0x6, &(0x7f0000000000)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x69, 0x11, 0x10}, [@func={0x85, 0x0, 0x1, 0x0, 0x2}, @call={0x85, 0x0, 0x0, 0x5}, @exit={0x95, 0x0, 0x23}], {0x95, 0x0, 0x5a5}}, &(0x7f0000000080)='GPL\x00', 0x0, 0xf8, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x6, 0x0, 0x6, 0x10, 0x0}, 0xffffffffffffffe7) (async) 00:26:11 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r2, 0x0, 0x10000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000003c0)=[{&(0x7f0000000140)="00eab5523a9daf9d4bfd5138fd9e519d5771ac281796dca17530bda33222da542fc068151c461bc22582ad30742833f52261c4658d06c3a32056131b205d0a814d7e53df01034782c8d6f028719996fc6c47cd6a62de236afb8aec4886baf1b0d499cabb2a15b503f4f98ee0648db079db30f46107c0c7c9856a6f50819d5faf08b464e04f53f116bbd903efcaec3954f231d08f53dfe344acc00c9018a19fc38958b317", 0xa4}], 0x0, 0x8) write$binfmt_misc(r2, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)) (async) pipe(&(0x7f00000000c0)) (async) splice(r0, 0x0, r2, 0x0, 0x10000, 0x0) (async) vmsplice(0xffffffffffffffff, &(0x7f00000003c0)=[{&(0x7f0000000140)="00eab5523a9daf9d4bfd5138fd9e519d5771ac281796dca17530bda33222da542fc068151c461bc22582ad30742833f52261c4658d06c3a32056131b205d0a814d7e53df01034782c8d6f028719996fc6c47cd6a62de236afb8aec4886baf1b0d499cabb2a15b503f4f98ee0648db079db30f46107c0c7c9856a6f50819d5faf08b464e04f53f116bbd903efcaec3954f231d08f53dfe344acc00c9018a19fc38958b317", 0xa4}], 0x0, 0x8) (async) write$binfmt_misc(r2, 0x0, 0x4) (async) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) (async) 00:26:11 executing program 4: rt_sigprocmask(0x0, &(0x7f0000000100)={[0x2000000fffffffc]}, 0x0, 0x8) rt_sigtimedwait(&(0x7f0000000080)={[0x5406]}, &(0x7f0000000180), &(0x7f00000000c0)={0x0, 0x3938700}, 0x8) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000280)={0xffffffffffffffff}) close(r0) socket$inet(0x2, 0x5, 0x0) io_submit(0x0, 0x4b, &(0x7f0000000040)=[&(0x7f0000000000)={0x0, 0x0, 0x0, 0x1000800000000001, 0x0, r0, 0x0, 0x12f}]) sendfile(0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x0) rt_sigprocmask(0x0, &(0x7f0000000100)={[0x2000000fffffffc]}, 0x0, 0x8) (async) rt_sigtimedwait(&(0x7f0000000080)={[0x5406]}, &(0x7f0000000180), &(0x7f00000000c0)={0x0, 0x3938700}, 0x8) (async) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000280)) (async) close(r0) (async) socket$inet(0x2, 0x5, 0x0) (async) io_submit(0x0, 0x4b, &(0x7f0000000040)=[&(0x7f0000000000)={0x0, 0x0, 0x0, 0x1000800000000001, 0x0, r0, 0x0, 0x12f}]) (async) sendfile(0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x0) (async) 00:26:11 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0xc00000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:11 executing program 3: sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f00000000c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x4}, 0xc, &(0x7f0000000080)={&(0x7f0000000040)=@deltclass={0x34, 0x29, 0x2, 0x70bd26, 0x25dfdbfb, {0x0, 0x0, 0x0, 0x0, {0xa, 0x3}, {0x9, 0xd}, {0xd}}, [@tclass_kind_options=@c_sfb={0x8}, @TCA_RATE={0x6, 0x5, {0x9, 0x80}}]}, 0x34}}, 0x1) r0 = bpf$OBJ_GET_MAP(0x7, &(0x7f0000000140)={&(0x7f0000000100)='./file0\x00', 0x0, 0x8}, 0x10) ioctl$sock_inet_SIOCGIFDSTADDR(0xffffffffffffffff, 0x8917, &(0x7f0000000180)={'netpci0\x00', {0x2, 0x0, @multicast1}}) bpf$MAP_LOOKUP_ELEM(0x1, &(0x7f0000000340)={r0, &(0x7f00000001c0)="c65de9d835eb29629f6b7b6db03de84a26f214f31c93672ee27cb463e4bcd6fd31f3b3b871072a3a9f8a03ca2703a6612af302c915a088d0b740e626098be289e7545bc9498ac597a3855564c98599511d52ee533c56fa60e430689ebaeb6549a04be6087a39697bb1ca0e30260c56706c2e30102b42f1eb350c9d98c68098fa87c1cc2ae3b08bbbe73bb5fa52f29e7f7e8cccb525e55777c8b29c08c18d886d", &(0x7f0000000280)=""/174, 0x4}, 0x20) ioctl$AUTOFS_DEV_IOCTL_PROTOVER(0xffffffffffffffff, 0xc0189372, &(0x7f0000000380)={{0x1, 0x1, 0x18, r0, {0x7}}, './file0/file0\x00'}) ppoll(&(0x7f00000003c0)=[{r0, 0x2}, {r0, 0x25}, {r1, 0x1624}], 0x3, &(0x7f0000000400)={0x0, 0x3938700}, &(0x7f0000000440)={[0x6]}, 0x8) mount$overlay(0x0, &(0x7f0000000480)='.\x00', &(0x7f00000004c0), 0x60, &(0x7f0000000500)={[{@index_off}, {@xino_on}, {@xino_on}, {@xino_off}, {@nfs_export_off}], [{@euid_gt={'euid>', 0xee01}}, {@hash}, {@smackfsfloor={'smackfsfloor', 0x3d, 'sfb\x00'}}, {@dont_appraise}, {@measure}]}) r2 = dup2(r0, r0) umount2(&(0x7f0000000580)='./file0/file0\x00', 0x4) r3 = openat$btrfs_control(0xffffffffffffff9c, &(0x7f00000005c0), 0x410003, 0x0) getpeername$l2tp(r3, &(0x7f0000000600)={0x2, 0x0, @private}, &(0x7f0000000640)=0x10) r4 = syz_open_dev$sndctrl(&(0x7f0000000680), 0x1, 0x200480) ioctl$FICLONE(r3, 0x40049409, r4) stat(&(0x7f0000000740)='./file0\x00', &(0x7f0000000780)={0x0, 0x0, 0x0, 0x0, 0x0}) mount$9p_fd(0x0, &(0x7f00000006c0)='./file0/file0\x00', &(0x7f0000000700), 0x80000, &(0x7f0000000800)={'trans=fd,', {'rfdno', 0x3d, r2}, 0x2c, {'wfdno', 0x3d, r3}, 0x2c, {[{@fscache}, {@loose}, {@fscache}, {@dfltuid={'dfltuid', 0x3d, 0xee01}}], [{@subj_user={'subj_user', 0x3d, '\''}}, {@fsmagic={'fsmagic', 0x3d, 0x9}}, {@fowner_eq={'fowner', 0x3d, r5}}, {@subj_type}]}}) r6 = syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) r7 = syz_genetlink_get_family_id$nbd(&(0x7f0000000900), 0xffffffffffffffff) sendmsg$NBD_CMD_DISCONNECT(r6, &(0x7f00000009c0)={&(0x7f00000008c0)={0x10, 0x0, 0x0, 0x4004200}, 0xc, &(0x7f0000000980)={&(0x7f0000000940)={0x28, r7, 0x8, 0x70bd2d, 0x25dfdbfd, {}, [@NBD_ATTR_BACKEND_IDENTIFIER={0x6, 0xa, '-\xed'}, @NBD_ATTR_CLIENT_FLAGS={0xc}]}, 0x28}, 0x1, 0x0, 0x0, 0x4004800}, 0x20000040) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000f00)={r1, 0xe0, &(0x7f0000000e00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, &(0x7f0000000c40)=[0x0, 0x0, 0x0, 0x0, 0x0], ""/16, 0x0, 0x0, 0x0, 0x0, 0x5, 0x7, &(0x7f0000000c80)=[0x0, 0x0, 0x0, 0x0, 0x0], &(0x7f0000000cc0)=[0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], 0x0, 0x8, &(0x7f0000000d00)=[{}, {}, {}], 0x18, 0x10, &(0x7f0000000d40), &(0x7f0000000d80), 0x8, 0x10, 0x8, 0x8, &(0x7f0000000dc0)}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f0000000f80)={0xf, 0xa, &(0x7f0000000a00)=@raw=[@call={0x85, 0x0, 0x0, 0x86}, @map_idx_val={0x18, 0x6, 0x6, 0x0, 0xd, 0x0, 0x0, 0x0, 0x5}, @cb_func={0x18, 0xb, 0x4, 0x0, 0x2}, @ldst={0x1, 0x0, 0x3, 0xa, 0x5, 0xffffffffffffffe0, 0x8}, @alu={0x7, 0x0, 0x0, 0x3, 0xe, 0x1, 0xfffffffffffffff4}, @jmp={0x5, 0x0, 0xb, 0x4, 0x8, 0xfffffffffffffff4, 0x4}, @initr0={0x18, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x20}], &(0x7f0000000a80)='GPL\x00', 0x0, 0xeb, &(0x7f0000000ac0)=""/235, 0x41000, 0x0, '\x00', 0x0, 0x13, r2, 0x8, &(0x7f0000000bc0)={0x7, 0x1}, 0x8, 0x10, &(0x7f0000000c00)={0x0, 0x9, 0x8, 0x8c37}, 0x10, r8, r3, 0x0, &(0x7f0000000f40)=[r3, r1, r0]}, 0x80) 00:26:11 executing program 5: r0 = perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x6, 0x8}, 0x2800, 0x0, 0x0, 0x8, 0x0, 0xfffffffc}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) (async) r1 = socket$inet_smc(0x2b, 0x1, 0x0) setsockopt$inet_tcp_TCP_REPAIR_QUEUE(r1, 0x6, 0x14, &(0x7f0000000000), 0x4) (async) ioctl$sock_inet_SIOCDARP(r1, 0x8953, &(0x7f00000000c0)={{0x2, 0x4e22, @loopback}, {0x306, @dev={'\xaa\xaa\xaa\xaa\xaa', 0x3c}}, 0x8, {0x2, 0x4e23, @multicast2}, 'bridge0\x00'}) (async) sendto$inet(r1, &(0x7f00000003c0)="24865e9cfa3f63b0fa8bdfbe73713cb8e51ed61012b387d3a9d99bba3289a50ebc590be4e76db8a9c02ac664b7fdc9f2372c9526d9682652d380fa4a4b6a323e205ffa4943413b1bee88fd5cd044c1560bb20e9871893c01af571858eb6e614ab3674c2c1f579a370ed5a9dff65491cd5787a8e4f2a39e4547cb026b5f5b154ea1c093a110e5e733ba225e179586a289f23119db23a24367998671e4a566477f580d97d9523f106a91310f694f3c3f9b977fedd48b412c594192fe381f6dd3e885fdc0649b58d9f9b4df105cc82f4f9318ecda50a10749c20e72f42e6836b927ea29c357eab0a3e992d8116441e630243ff51f2bad93b3a5a1d4697a3d0dec6143fb5de2d2be769f23b522391063ea74fd27c7146a866e77ed18aa4db2cd68daaa6da76dea0ddbd896b386d440c681b3ae65a41436f8c327b134f71876f55606edce25639380805e242f2549d9a625d6285750e082299d29866ff88bf3f196795c740498230019c981b9ca454826e3855fab11cac77842895da7bc04b78bde02b1f9e441aa87ec6b3ce9b199e35e56035aa1328de5c1057e7e04ac281659f4de96b7a1960bd3e778efeee6b02459ebaa6763783f83542a8d4f8a5dc612b6013ae6165662a65e56e594fee1a43ea459a5ff6adfe3af8628b6b397960cac668198379b97f3bcbca82116fa8b01c55481bc5b3ccc8a1f2726f8262174dfef520c8c4a50a157cb6b841e4c4b7f18a850f1ee993d554fba45961fc1b55c2d4ccb85f36ed3b07fc3926de9ec01034b1a5372d4246351575e0dd01ea32c9d33a413925e08ef62e48148f94390e3e6ada3d363a712f9e270b41d8eee20c939c71f7fd84a5d86f34a20e5da97b4652d6cfc2fa97c973384174cabd3c3a21d74fdceed359fde6a90f9387f2202b3230b7301817e162e4720beaad1dac0ec3633fc04159c776255eb76cf21ddf3067c607c6cd7b00091a54f131f47d497cf0747d11f85a49e11b38f97961e8c3862f969541aa48358c18efa480544a49db09769400053f2fa65930bf0c996b9e2d912ae2b924fef74c95077bb95002442a787de30670dd3dac9f2151ec92f92b82a368bc41c2eeda40b37242c98f7c5c5b04a839e857c3877eb59a1f0a8943e4afed111245d9b5e9ddf482451860c547c5be1306c81d47b5cfde7bb3c0702f762f7b491df1ad538d253281b0f7835ed9a17f95d24ba9034a7a270dbb52f2abcb2a34202492a09f3d572259b5ed08e5dc8b05fb2e039650a53e93fa06f242784697628f2b4c350a1e305827ec6f1fba6d336ab3c816857876be454aab33e2b2ffeef12800da32aecc5ceb3366d9f6c4a6463ff07546d03510c74963d7313391156509a4c8ff8030b034a237e560fd8a8e9df1ffd21dff9a73552a6d0a5d0f2b0e08662304d9f57574d9c9821f1b2cf1437e6863ac485872e862b6be6838e7d7813308d38028a52b73a3d41319973f4bce14387fd9e7a1d69d4bb629aca8beedd59c391efc143df2137e2cb3d5076d04af1e195debe8bdf339639773ce00e2f2e6a76e6e3f6c00390d699ca71da642efb1e846c94813127618322f57fe77bfc533ae597110574ac7ecde4f7bf96fac54a7e6700704e14affc61a922a45ff03e784acab3aacd34ac392eb73b96ff7cf4462796145c96c856aea9d36767000feb3e36b61d58e054ccff9a64c7c45fd0cd1950c729d99f8c7c75494cc2fd56537a04ffc9916b0484177fe83ff8ad8a1ee6fcb373c5981b7c2da3e96eda1cb6d631da5b0deb93ffa25e10d67c72657a76aab29d17ba5f35633bcebaa2870ef0128fc21bb34702a79b3687bf2b7b7e06cb6314471a785f57882ff0c9eeccd8c8b8ff2d1fdbacdb1842fe762b62b5ab9f0f2f8c8ef12dd2ef1435d987caedbc07e72fb224038fc1710d7b53fde6b032d1e13271d6f255174a0493dd5ac9aee93b09f6e725551030b0b01fcb6dbb472118df40c2048569359782ac236a2786e8672a390f484f7925ceea734cdcaacd742a6c45bad32bfa1f2ca1af08371672779e0274573ddb28f3766b012901d2ee77df35fd865630144213708973a10a407cf38a8d7fbd93ca7203a97f51e76ee720cee5b042b45e7c71a4698e6b6928e067d1b1a25073dc66795b6b1e10a86ceca10eb17c041107496dfc572ac9f52a2725a4a5a6a9a2af97c7025f4f009d6dd9f5ae5c5df3261abb9b70aaed42fb5669ee913fdcb965e26707575a93333aec6c23e8a160e80d3fd8cebb11ea33c8d2325b7b92c01013f0217a71466c83761fecdf6ed6fc6799aa3d5446f83b017e68cd34c04e5945a2642b57a29dbbce1a9bfa485c30c6d72aad52aeaacd19f387d05512ad07bc9a8696742a7976a3e4053565d65f37752af1de2e37b0ad1e098553e6ae825a9aaf31b90ff0df2f3186a202884cdbccfd93dcaa70a9259dcd844cf652d5f2dc89386ced421ab6c0ee575899cad677b9d40be7bd041987b3a5e1fb0a1347110c5dfa0c670849a650a3bd23a5bee0e4c6f8cae78738fc42b21ac8e310d4edb1faf0b3bb2f6029c2c856c42ebcef86f671bff671cb8837537ed4994c606a2f4828605cbdb785bf20882ad582f303f30d783c902d2a7a838484fd7da1150922f9197bbcf6f8d2d8701922c0b03a37add226445d27cd4f56ddad152626fd2ddcf2fd99171be0ade5f07d7ffb2dfae6d4ff2462a1601ac483e0d18e85bce674c3005c5de5b2d6896af1a94445563c7bf421dd934b8bb368643faf4f2baff3f26dbe8fea992e819f9f452b001bf03685b890b5cb71a286d15af4730d8b4f51ebc356d1b422e8ecda205945693b4093186ab4339e8dbdd523d99c63e3597ede813100b0c81d5b60e2d203fb00828bc97e3db356c73026078735eb5659dbd3951c5de2591d35a60f7baf6844db1b9ad288b422af8047e4cf71739a4b3cf7cf6e39e21183f17c8a3c3e8ce0d3d0bb0734803815f96b15ba3a292a29aef394fd635bd5a5b0c9af6c93a4d5efa295a6ea8eb717d4761e8dc33f65ce2f9ae317ebd75fdb5278d0e70cbe9552b62dadb293fff2dc394ff1bf32d67c1e8fddc07b5196e97813dcddc783c8221bdd7304c97128095c6461456a248ba4447cdbdc0c178998f686e1eda73bad2edaaaab32c54a9bd36043baf683446cd5e697812d7f84bd6a4606e9fb6ed5cdde73f7b04127274a9948f41ca9ded03a9a85ee7338f00b95a6c67171cd252331ff9d4f4048e98fe4b5e16976dbbafb8a98937f220486d5727801984e06f8ea36f867651dddfbdd5be2f82ae0ecf9df16b9a04c36c92712eca77b90ace7ec3526ea283389a294919945b09ce68fd83a8e55c64086b4cbc51a7b924573f4787cc384d07acc6c1739bc443f9b9d7ab037a490e688096b79b6be7b6811c529dabc23692897855f11d3da5e564d116f42b295f6e9d08ac6fa12fe2f3b049aabae77b7969ca6bab3426f5589f6f1506c0bf2fe4ca6a0dbf1a6de7a4b0375df1d3b62f663155e9e9c8d464e376a1dcb3f14758b040c87bfd158c37878c55eddd21164f251c663177d5a7a6b926a6a698b5c899950be448536fd0e9b0d9aa451015bb559a58b2e32b98f2d868ac8a305bc59d98b953f4c9f6bf8dd81517370530f0a3b9a29debf803df4bc5b2a08b763bfa97fbb90edda72a92c4cc91f38c9de03d4e6ba3613e5b67109bb2a565cae2f39a4c159ff868c17e2217213cb46616403eb391c6059c140083f9544582fe90ca41b7f04f96f26d4a83fac55192799b9d320c0b254f92b6425054b3e729e17910c0da92e970373d37c2f800dbd70da3e8ef97ef122d6bca146cd2f933744346faf66e9a0e1bf4b9a4eb1a6ca2a2ea7baffd99f96d43b493681db3495921f79946de07ac8c592b042b68765a62a89e2eeb24bd30addba3935726558b654b1154f9d04e8e110e1a42393cff063e3a64748310e24abb52e32494ea72618f771fbe9bb26e75a9e22670b3ed019c67d11aa91acf706076640eb7e65b593b0e1952e66d754761180c15fec00c2b227a130f1b2d295775d2e879e1c9ad077e612135572bcd30f813f24871ea77d9e61f0c8cd7c545cd6c1f64fc6d501710627f435bc3d1ffe75d2b0e07bc5c6ddb10d46f07df0058e51776b5e8c03d0869b8f4d430785b2b3367953a12ff48c37f2f2b9034afe7e42349457cb8c16670ec9c6bd59566917c887d3b7635c706c0ce8aa267cb728e72b296d705c8cb8b1886eea0ac6cc216b367d2f7d5c44b5af389ab0fea3e5a26e2a04e4f15c170f548962c3fd779b523065e1c9f3ae44ff30856387f1594bc0fe15bc7e7eb79c576602247a5ad4f6b353230c7052560a23ef2d22711b6d5118251e1d4b6ffcc00398851f50309bdce9a521830b14edffbdd7282e0b76407301783b47c8d8e4d9dd467a2d44920b9a7d0e5b2fc81b730dd41aa96c8580b66557ce712cb50c6e5740aed504292994cd89d52de86b0042ee32cddef2579b6489cc475a999eb16f60b9ba8338dc15fe543d99844ae16446d135301c4fbac817210a5a996d6d8c3957a1fe4762494e683283a23f9b331ae3e26f38d921950c1fbe595551e5e72d78a464b0015141da0f895b43672f22dd973134f75ede8712a37f9f422be9d228a8c06abafa770d4e1535f2b018589be86430943fd4962033d7b52a4bae56049fb04f8bcd5f189acb26c8fa27e8b59e3dca52ea090ccd4fa8018ff58cf3b9e0ac9c8c8cff24c3b4919401bff9a0e7e2dd203f768bfd2c49da13898f35792c61c54d2372222fdf82bd8b901006601c58a97c076cac37dd10ebd954cb8b3307e5f74ebd5c7b40c164f67ca0217db6cccad774799510c89b813ad3257a81dc354eabecc054e8608ed4ecc9ca6021be6c1960105b607b6daada0c07b027d310e1796902626b06a80361ce1d8adedd6a1aad921358ff1e9ca952111be487e078009183e1b8e3e03e0115cac95cdd58ca2395c7a83e6a42620f973257ff8eea95de9b81699b01ba92ed2bcb1929325279a53c73589c4ca1aced30109814b334e4acaf66747b97a2089b54798a41cdf3d2820d67fc21bc97b60a3f17834fb026505526fbca82047377f7d8157422fa2c0a22363df1513cc59ad4c158773770e9fd84d83ff5309300eec129c07665b9f41642200f0a4d53f786b6d0db084c8f25c2df9a1045d46d6fd0b137e5e18da7ef98a4593b0172ad8a9eb2ddd14894c53f9a013bc79877121a2f18cc1d17bccb9c04e7493caba9987d166c04145fcb439c688644fd39eda2dba8b23de6a684bf8202d8fdec76d67c14722d8418337459500a1f271be95406d422c6d3e7dfa5bab5c8e401d3711485c2d3959c795395a338f169d5042861f9ee7b3e249587959812347643e1529fcb1e0a4db543ed2483cbc0e63275caf99b9403f63c99431cb7f3cf18c79349e4b371c49da77438e3961ed8baaf860b61d2bee8f8e44ea0df9317567332bd2cfe796351fe097c9514642615dc4bdffe5b0c373ca723d78d69e88842996c3d6f8a6f67970ef50076a0b1684b1be2d05f951bb3102082f7a4037377db611d646230dd7a3d205a3874d71a9aa87950f6c88e71d14d524472d3088e65277ddf5c060f030f4779f3dfa6a6f244c865ad97601ecbc75c982990a470d1a4b8c030c005a69ad9b8b99d163a7210f289e7cf4baad352bdd6d62400b954f20f1cd4f79b947f64ce70a400a60c5a2696eb1790ee94c6fce650a7826644b4b661a40ac9e56089dc6699564b2b46ae68a9f4addf4544bea673216b1bd3cdcb02eee56e7946ceca17373d56", 0x1000, 0x20000010, &(0x7f0000000180)={0x2, 0x4e21, @loopback}, 0x10) (async) r2 = socket(0x2b, 0x800, 0x80000000) getsockopt$inet_tcp_buf(r2, 0x6, 0xd, &(0x7f0000000040)=""/122, &(0x7f0000000140)=0x7a) (async) dup3(r0, r1, 0x0) 00:26:11 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x2200000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:11 executing program 4: syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5f800, 0xe, &(0x7f0000000200)=[{&(0x7f0000010b00)="ff43443030310100"/32, 0x20, 0x4}, {&(0x7f0000000180)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x459}, {&(0x7f0000011120)="22001e0000000000001e00080000000008007a090c0c001e0002000001000001010022001e0000000000001e00080000000008007a090c0c001e000200000100000101013400210000000000002164000000000000647a090c0c001e00000000010000011200660069006c0065002e0063006f006c0064002c001f0000000000001f00080000000008007a090c0c001e00020000010000010a00660069006c00650030002c0022000000000000220a0000000000000a7a090c0c001e00000000010000010a00660069006c00650031002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c00650032002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c0065003300"/320, 0x140, 0x7ff}, {&(0x7f0000010000)="01434430303101004c494e55582020202020202020202020202020202020202020202020202020204344524f4d2020202020202020202020202020202020202020202020202020200000000000000000bf000000000000bf000000000000000000000000000000000000000000000000000000000000000001000001010000010008080018000000000000181400000000000000000000160000000022001c0000000000001c00080000000008007a090c0c001e00020000010000010100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202073797a6b616c6c65722020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202047454e49534f494d4147452049534f20393636302f4846532046494c4553595354454d2043524541544f5220284329203139393320452e594f554e4744414c452028432920313939372d32303036204a2e50454152534f4e2f4a2e534348494c4c494e472028432920323030362d32303037204344524b4954205445414d202066696c6533202020202020202020202020202020202020202020202020202020202020202066696c6531202020202020202020202020202020202020202020202020202020202020202066696c6532202020202020202020202020202020202020202020202020202020202020202032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8000}, {&(0x7f0000010580)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d002000200020002000200020002000200020002000200000000000000000bf000000000000bf252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c18000000000000000000001a0000000022001e0000000000001e00080000000008007a090c0c001e00020000010000010100002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000730079007a006b0061006c006c006500720020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000470045004e00490053004f0049004d004100470045002000490053004f00200039003600360030005f004800460053002000460049004c004500530059005300540045004d002000430052004500410054004f005200200028004300290020003100390039003300200045002e0059004f0055004e004700440041004c004500660069006c0065003300200020002000200020002000200020002000200020002000200000660069006c0065003100200020002000200020002000200020002000200020002000200000660069006c0065003200200020002000200020002000200020002000200020002000200032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8800}, {&(0x7f0000010b20)="01001c0000000100000005001d000000010046494c4530000000000000000000", 0x20, 0xa000}, {&(0x7f0000010b40)="01000000001c0001000005000000001d000146494c4530000000000000000000", 0x20, 0xb000}, {&(0x7f00000008c0)="01001e005100010000000069006c0065003000000000e6f04c670b2ba013c1e58303e9e17c85a1ac3999aeea37ed1802774ad402ef3b322d490d2470199200eed331bc5b5aa0bd19339550bcb44dd1d2a89c65d4c5fcefbca7927a9f39f2c1d9f1d82e8162c58b0e38221926369843011268335dde975a91894a17878d4ab9f0470e30095149ab2d874f949c2cefe90edf7b68ff425fcf2c2fbf6d9300e932e83f7e7a8f881a521e714d1dd64ca863c71a27065bb0b038bb70481af46c32578cf59387e9a846b3811ffae03cbc254090234121096e1f4cbba308b9d536f51bb5426e2b0dc8ebefbf235867e4b8c6f5af107183d5925ff20ab394bfaf366a575671913e9934eae9d7", 0x108, 0xc000}, {&(0x7f0000000a00)="88001c0000000000001c00080000000008007a090c0c001e0002000001000001010053500701bace709052050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a0b0c0c001e007a090c0c0035007a090c0c001e0043451c01200000fd000000200000000000000000ed000000000000ed66001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008c00210000000000002164000000000000647a090c0c001e00000000010000010a46494c452e434f4c3b310041410e0254455854756e6978000052520501894e4d0e010066696c652e636f6c64505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000074001d0000000000001d00080000000018007a090c0c001e00020000010000010546494c453052520501894e4d0a010066696c6530505824016d4100000000416d020e0000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860022000000000000220a0000000000000a7a090c0c001e00000000010000010846494c45312e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6531505824416d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008600230000000000002328230000000023287a090c0c001e00000000010000010846494c45322e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6532505824016d8100000000816d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c11bed46e3bd276471e00008600230000000000002328230000000023287a090c1c001e00000000010000010846494c45332e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6533505824016d8100000000816d02000000000000020000000000000000000000000000000554461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000b29e0dab9c906da7ffff7b0bfe3b41214f6c362ba753e16fa4f697365db2095524da3eb3a93c3e212e511de9db25e3ce34c3ec3f12e04386ed76095459835832513cd6d693cf7e5a95639f7dffee256394d2f029c51e1cd234f600d4", 0x3dc, 0xe000}, {&(0x7f0000010f20)="66001d0000000000001d00080000000008007a090c0c001e000200000100000101005252050181505824016d4100000000416d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000066001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860028000000000000281a0400000000041a7a090c0c001e00000000010000010846494c45302e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6530505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000aa00290000000000002900000000000000007a090c0c001e00000000010000010846494c45312e3b3100525205018d4e4d0a010066696c6531505824016da100000000a16d010000000000000100000000000000000000000000000000534c32010008000003746d70001673797a2d696d61676567656e32383037373134373932000566696c6530000566696c653054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000000000000", 0x200, 0xe800}, {&(0x7f0000011260)="22001f0000000000001f009c12080000000008007a090c0c001e0002000001000001010022001e000000007a090c0c001e000200000100000101012c0028000000000000281a040000000004090000000ce71e00000000010000010a00660069006c00650030002c00290000000000002900000000000000007a090c0c801e00000000010000010a00660069006c006500310000000000", 0x97, 0xf804}, {&(0x7f00000004c0)="4552ed010a548701525249505f313939314154484520524f434b20524944474520494e544552432b414e47452050524f544f434f4c2050524f564944455320535550504f525420464f5220504f5349582046494c452053595354454d2053454d414e54494353504c4541534520434f4e545d43542044495343205055424c495348455220464f522053504543494649434154494f4e20534f555243452e2020534545205055424c4953484552204944454e54494649455220494e205052494d41525920564f4c554d452044455343524950544f5220464f5220434f4e54414340206a80f77503494e464f524d4154494f4e2e000000000000000000000000000000000000009613804f537b6dae272540d62919a741bb3068030eb9aaf24e2c553d8cbf396a66332caebe2d45878ccc7a8da845b235c98bf0ae61586f2b", 0x13d, 0x10000}, {&(0x7f0000011480)='syzkallers\x00'/32, 0x20, 0x11000}, {&(0x7f00000114a0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x14000}], 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB="696f636861727365743d6575632d636b3d72656c53ea61786564f02c6d61703d61636f726e2c6e6f6a6f6c6965740000000000000000001aa0f463e1adbd84a37b43f324bb410d55a379e3eb011cb96680920b093efd06b5431eca1a"], 0x1) mount(0x0, &(0x7f0000000140)='./file0\x00', &(0x7f0000000000)='binder\x00', 0x0, 0x0) r0 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r1 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB="14000000", @ANYRES8=r0, @ANYBLOB='\x00'], 0x14}, 0x1, 0x0, 0x0, 0x40841}, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000400)=ANY=[@ANYRES32=r0, @ANYRES8=r0]) sendmsg$NL80211_CMD_TDLS_MGMT(r1, &(0x7f0000000640)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000600)={&(0x7f0000000480)=ANY=[@ANYBLOB="06000000", @ANYRES16=r0, @ANYBLOB="00042abd7000fcdbdf255200000008000300", @ANYRES32=0x0, @ANYBLOB="050089005b0000000a000600ffffffffffff0000"], 0x30}, 0x1, 0x0, 0x0, 0x4000080}, 0x4001) r2 = openat(0xffffffffffffff9c, &(0x7f0000004280)='./file0\x00', 0x0, 0x0) getdents64(r2, &(0x7f0000000080)=""/253, 0xfd) r3 = creat(&(0x7f0000000040)='./file0\x00', 0x0) r4 = openat$procfs(0xffffffffffffff9c, &(0x7f00000007c0)='/proc/partitions\x00', 0x0, 0x0) ioctl$KDSETMODE(r3, 0x4b3a, 0x0) r5 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r5, 0x8933, &(0x7f0000000040)={'veth1_vlan\x00', 0x0}) r7 = openat$mice(0xffffffffffffff9c, &(0x7f0000000680), 0x202) execveat(r7, &(0x7f0000000800)='./file0\x00', &(0x7f0000001180)=[&(0x7f0000000880)='overlay\x00', &(0x7f0000000f40)='binder\x00', &(0x7f0000000f80)='binder\x00', &(0x7f0000000fc0)='nl80211\x00', &(0x7f0000001000)='overlay\x00', &(0x7f0000001040)='.\\#+!(\x00', &(0x7f0000001080)='binder\x00', &(0x7f00000010c0)='\x1a-\x00', &(0x7f0000001100)='iso9660\x00', &(0x7f0000001140)='m\x00'], &(0x7f0000001300)=[&(0x7f0000001200)='/proc/partitions\x00', &(0x7f0000001240)='nl80211\x00', &(0x7f0000001280)='nl80211\x00', &(0x7f00000012c0)='veth1_vlan\x00'], 0x400) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)=@ipv4_newaddr={0x28, 0x14, 0x1, 0x2, 0x0, {0x2, 0x18, 0x0, 0x0, r6}, [@IFA_LOCAL={0x8, 0x2, @remote}, @IFA_BROADCAST={0x8, 0x4, @local}]}, 0x28}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f0000000e00)=@delqdisc={0x108, 0x25, 0x8, 0x70bd3c, 0x25dfdbfb, {0x0, 0x0, 0x0, r6, {0x2, 0xc}, {0x3, 0x7}, {0x1, 0x7}}, [@TCA_RATE={0x6, 0x5, {0x7}}, @TCA_STAB={0x4}, @TCA_STAB={0xd8, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x6, 0x6, 0xed, 0x40, 0x1, 0x6, 0x81}}, {0x4}}, {{0x1c, 0x1, {0x2, 0x0, 0x7f, 0x1, 0x2, 0xfffff47b, 0x401, 0x4}}, {0xc, 0x2, [0xa3e6, 0x9, 0x80, 0x1116]}}, {{0x1c, 0x1, {0x7a, 0x5c, 0x1baf, 0x7fffffff, 0x0, 0xea3c, 0x1, 0x5}}, {0xe, 0x2, [0x8000, 0x8, 0x1, 0x1, 0xf413]}}, {{0x1c, 0x1, {0x1, 0x4, 0x36, 0x549, 0x2, 0x8, 0x1, 0x6}}, {0x10, 0x2, [0x1000, 0x991, 0x2, 0xa1, 0x50d, 0x55]}}, {{0x1c, 0x1, {0x28, 0x0, 0x3ff, 0x77c33cda, 0x2, 0x7, 0x8, 0xa}}, {0x18, 0x2, [0xffff, 0x3, 0x3, 0x5, 0x1, 0x800, 0x81, 0x9, 0xd22b, 0x3]}}]}]}, 0x108}, 0x1, 0x0, 0x0, 0x4000000}, 0x41) sendmsg$nl_route_sched(r4, &(0x7f0000000780)={&(0x7f00000006c0)={0x10, 0x0, 0x0, 0x20000000}, 0xc, &(0x7f0000000740)={&(0x7f0000000700)=ANY=[@ANYBLOB="240000002a00100029bd7000fddbdf2500000000", @ANYRES32=r6, @ANYBLOB='\x00'/12], 0x24}, 0x1, 0x0, 0x0, 0x20000000}, 0x4) 00:26:11 executing program 3: sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f00000000c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x4}, 0xc, &(0x7f0000000080)={&(0x7f0000000040)=@deltclass={0x34, 0x29, 0x2, 0x70bd26, 0x25dfdbfb, {0x0, 0x0, 0x0, 0x0, {0xa, 0x3}, {0x9, 0xd}, {0xd}}, [@tclass_kind_options=@c_sfb={0x8}, @TCA_RATE={0x6, 0x5, {0x9, 0x80}}]}, 0x34}}, 0x1) (async) r0 = bpf$OBJ_GET_MAP(0x7, &(0x7f0000000140)={&(0x7f0000000100)='./file0\x00', 0x0, 0x8}, 0x10) ioctl$sock_inet_SIOCGIFDSTADDR(0xffffffffffffffff, 0x8917, &(0x7f0000000180)={'netpci0\x00', {0x2, 0x0, @multicast1}}) (async) bpf$MAP_LOOKUP_ELEM(0x1, &(0x7f0000000340)={r0, &(0x7f00000001c0)="c65de9d835eb29629f6b7b6db03de84a26f214f31c93672ee27cb463e4bcd6fd31f3b3b871072a3a9f8a03ca2703a6612af302c915a088d0b740e626098be289e7545bc9498ac597a3855564c98599511d52ee533c56fa60e430689ebaeb6549a04be6087a39697bb1ca0e30260c56706c2e30102b42f1eb350c9d98c68098fa87c1cc2ae3b08bbbe73bb5fa52f29e7f7e8cccb525e55777c8b29c08c18d886d", &(0x7f0000000280)=""/174, 0x4}, 0x20) (async) ioctl$AUTOFS_DEV_IOCTL_PROTOVER(0xffffffffffffffff, 0xc0189372, &(0x7f0000000380)={{0x1, 0x1, 0x18, r0, {0x7}}, './file0/file0\x00'}) ppoll(&(0x7f00000003c0)=[{r0, 0x2}, {r0, 0x25}, {r1, 0x1624}], 0x3, &(0x7f0000000400)={0x0, 0x3938700}, &(0x7f0000000440)={[0x6]}, 0x8) mount$overlay(0x0, &(0x7f0000000480)='.\x00', &(0x7f00000004c0), 0x60, &(0x7f0000000500)={[{@index_off}, {@xino_on}, {@xino_on}, {@xino_off}, {@nfs_export_off}], [{@euid_gt={'euid>', 0xee01}}, {@hash}, {@smackfsfloor={'smackfsfloor', 0x3d, 'sfb\x00'}}, {@dont_appraise}, {@measure}]}) r2 = dup2(r0, r0) (async) umount2(&(0x7f0000000580)='./file0/file0\x00', 0x4) (async) r3 = openat$btrfs_control(0xffffffffffffff9c, &(0x7f00000005c0), 0x410003, 0x0) getpeername$l2tp(r3, &(0x7f0000000600)={0x2, 0x0, @private}, &(0x7f0000000640)=0x10) (async) r4 = syz_open_dev$sndctrl(&(0x7f0000000680), 0x1, 0x200480) ioctl$FICLONE(r3, 0x40049409, r4) (async) stat(&(0x7f0000000740)='./file0\x00', &(0x7f0000000780)={0x0, 0x0, 0x0, 0x0, 0x0}) mount$9p_fd(0x0, &(0x7f00000006c0)='./file0/file0\x00', &(0x7f0000000700), 0x80000, &(0x7f0000000800)={'trans=fd,', {'rfdno', 0x3d, r2}, 0x2c, {'wfdno', 0x3d, r3}, 0x2c, {[{@fscache}, {@loose}, {@fscache}, {@dfltuid={'dfltuid', 0x3d, 0xee01}}], [{@subj_user={'subj_user', 0x3d, '\''}}, {@fsmagic={'fsmagic', 0x3d, 0x9}}, {@fowner_eq={'fowner', 0x3d, r5}}, {@subj_type}]}}) (async) r6 = syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) (async) r7 = syz_genetlink_get_family_id$nbd(&(0x7f0000000900), 0xffffffffffffffff) sendmsg$NBD_CMD_DISCONNECT(r6, &(0x7f00000009c0)={&(0x7f00000008c0)={0x10, 0x0, 0x0, 0x4004200}, 0xc, &(0x7f0000000980)={&(0x7f0000000940)={0x28, r7, 0x8, 0x70bd2d, 0x25dfdbfd, {}, [@NBD_ATTR_BACKEND_IDENTIFIER={0x6, 0xa, '-\xed'}, @NBD_ATTR_CLIENT_FLAGS={0xc}]}, 0x28}, 0x1, 0x0, 0x0, 0x4004800}, 0x20000040) (async) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000f00)={r1, 0xe0, &(0x7f0000000e00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, &(0x7f0000000c40)=[0x0, 0x0, 0x0, 0x0, 0x0], ""/16, 0x0, 0x0, 0x0, 0x0, 0x5, 0x7, &(0x7f0000000c80)=[0x0, 0x0, 0x0, 0x0, 0x0], &(0x7f0000000cc0)=[0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], 0x0, 0x8, &(0x7f0000000d00)=[{}, {}, {}], 0x18, 0x10, &(0x7f0000000d40), &(0x7f0000000d80), 0x8, 0x10, 0x8, 0x8, &(0x7f0000000dc0)}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f0000000f80)={0xf, 0xa, &(0x7f0000000a00)=@raw=[@call={0x85, 0x0, 0x0, 0x86}, @map_idx_val={0x18, 0x6, 0x6, 0x0, 0xd, 0x0, 0x0, 0x0, 0x5}, @cb_func={0x18, 0xb, 0x4, 0x0, 0x2}, @ldst={0x1, 0x0, 0x3, 0xa, 0x5, 0xffffffffffffffe0, 0x8}, @alu={0x7, 0x0, 0x0, 0x3, 0xe, 0x1, 0xfffffffffffffff4}, @jmp={0x5, 0x0, 0xb, 0x4, 0x8, 0xfffffffffffffff4, 0x4}, @initr0={0x18, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x20}], &(0x7f0000000a80)='GPL\x00', 0x0, 0xeb, &(0x7f0000000ac0)=""/235, 0x41000, 0x0, '\x00', 0x0, 0x13, r2, 0x8, &(0x7f0000000bc0)={0x7, 0x1}, 0x8, 0x10, &(0x7f0000000c00)={0x0, 0x9, 0x8, 0x8c37}, 0x10, r8, r3, 0x0, &(0x7f0000000f40)=[r3, r1, r0]}, 0x80) 00:26:11 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) splice(r0, 0x0, r2, 0x0, 0x10000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000003c0)=[{&(0x7f0000000140)="00eab5523a9daf9d4bfd5138fd9e519d5771ac281796dca17530bda33222da542fc068151c461bc22582ad30742833f52261c4658d06c3a32056131b205d0a814d7e53df01034782c8d6f028719996fc6c47cd6a62de236afb8aec4886baf1b0d499cabb2a15b503f4f98ee0648db079db30f46107c0c7c9856a6f50819d5faf08b464e04f53f116bbd903efcaec3954f231d08f53dfe344acc00c9018a19fc38958b317", 0xa4}], 0x0, 0x8) write$binfmt_misc(r2, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)) (async) pipe(&(0x7f00000000c0)) (async) splice(r0, 0x0, r2, 0x0, 0x10000, 0x0) (async) vmsplice(0xffffffffffffffff, &(0x7f00000003c0)=[{&(0x7f0000000140)="00eab5523a9daf9d4bfd5138fd9e519d5771ac281796dca17530bda33222da542fc068151c461bc22582ad30742833f52261c4658d06c3a32056131b205d0a814d7e53df01034782c8d6f028719996fc6c47cd6a62de236afb8aec4886baf1b0d499cabb2a15b503f4f98ee0648db079db30f46107c0c7c9856a6f50819d5faf08b464e04f53f116bbd903efcaec3954f231d08f53dfe344acc00c9018a19fc38958b317", 0xa4}], 0x0, 0x8) (async) write$binfmt_misc(r2, 0x0, 0x4) (async) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) (async) 00:26:11 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x2300000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) [ 949.196048] overlayfs: unrecognized mount option "" or missing value 00:26:11 executing program 2: openat$rfkill(0xffffffffffffff9c, 0x0, 0x408000, 0x0) (async) openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x40, 0x0) setrlimit(0xb, &(0x7f0000000100)={0x5846cb3c, 0x8200}) sched_setscheduler(0x0, 0x0, &(0x7f0000000000)=0x5) (async) getpid() sched_setaffinity(0x0, 0x8, &(0x7f0000000080)=0x1) (async, rerun: 32) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff}) (rerun: 32) connect$unix(r0, 0x0, 0x0) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) (async) recvmmsg(r0, &(0x7f00000000c0), 0x10106, 0x2, 0x0) (async) r1 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) (async) getresgid(&(0x7f0000000040), &(0x7f0000000180)=0x0, &(0x7f0000000240)) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000280)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r1, @ANYBLOB=',rootmode=000000000000100040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=r2]) 00:26:11 executing program 3: sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f00000000c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x4}, 0xc, &(0x7f0000000080)={&(0x7f0000000040)=@deltclass={0x34, 0x29, 0x2, 0x70bd26, 0x25dfdbfb, {0x0, 0x0, 0x0, 0x0, {0xa, 0x3}, {0x9, 0xd}, {0xd}}, [@tclass_kind_options=@c_sfb={0x8}, @TCA_RATE={0x6, 0x5, {0x9, 0x80}}]}, 0x34}}, 0x1) r0 = bpf$OBJ_GET_MAP(0x7, &(0x7f0000000140)={&(0x7f0000000100)='./file0\x00', 0x0, 0x8}, 0x10) ioctl$sock_inet_SIOCGIFDSTADDR(0xffffffffffffffff, 0x8917, &(0x7f0000000180)={'netpci0\x00', {0x2, 0x0, @multicast1}}) (async) bpf$MAP_LOOKUP_ELEM(0x1, &(0x7f0000000340)={r0, &(0x7f00000001c0)="c65de9d835eb29629f6b7b6db03de84a26f214f31c93672ee27cb463e4bcd6fd31f3b3b871072a3a9f8a03ca2703a6612af302c915a088d0b740e626098be289e7545bc9498ac597a3855564c98599511d52ee533c56fa60e430689ebaeb6549a04be6087a39697bb1ca0e30260c56706c2e30102b42f1eb350c9d98c68098fa87c1cc2ae3b08bbbe73bb5fa52f29e7f7e8cccb525e55777c8b29c08c18d886d", &(0x7f0000000280)=""/174, 0x4}, 0x20) ioctl$AUTOFS_DEV_IOCTL_PROTOVER(0xffffffffffffffff, 0xc0189372, &(0x7f0000000380)={{0x1, 0x1, 0x18, r0, {0x7}}, './file0/file0\x00'}) ppoll(&(0x7f00000003c0)=[{r0, 0x2}, {r0, 0x25}, {r1, 0x1624}], 0x3, &(0x7f0000000400)={0x0, 0x3938700}, &(0x7f0000000440)={[0x6]}, 0x8) mount$overlay(0x0, &(0x7f0000000480)='.\x00', &(0x7f00000004c0), 0x60, &(0x7f0000000500)={[{@index_off}, {@xino_on}, {@xino_on}, {@xino_off}, {@nfs_export_off}], [{@euid_gt={'euid>', 0xee01}}, {@hash}, {@smackfsfloor={'smackfsfloor', 0x3d, 'sfb\x00'}}, {@dont_appraise}, {@measure}]}) (async) r2 = dup2(r0, r0) (async) umount2(&(0x7f0000000580)='./file0/file0\x00', 0x4) (async) r3 = openat$btrfs_control(0xffffffffffffff9c, &(0x7f00000005c0), 0x410003, 0x0) getpeername$l2tp(r3, &(0x7f0000000600)={0x2, 0x0, @private}, &(0x7f0000000640)=0x10) (async) r4 = syz_open_dev$sndctrl(&(0x7f0000000680), 0x1, 0x200480) ioctl$FICLONE(r3, 0x40049409, r4) stat(&(0x7f0000000740)='./file0\x00', &(0x7f0000000780)={0x0, 0x0, 0x0, 0x0, 0x0}) mount$9p_fd(0x0, &(0x7f00000006c0)='./file0/file0\x00', &(0x7f0000000700), 0x80000, &(0x7f0000000800)={'trans=fd,', {'rfdno', 0x3d, r2}, 0x2c, {'wfdno', 0x3d, r3}, 0x2c, {[{@fscache}, {@loose}, {@fscache}, {@dfltuid={'dfltuid', 0x3d, 0xee01}}], [{@subj_user={'subj_user', 0x3d, '\''}}, {@fsmagic={'fsmagic', 0x3d, 0x9}}, {@fowner_eq={'fowner', 0x3d, r5}}, {@subj_type}]}}) (async) r6 = syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) (async) r7 = syz_genetlink_get_family_id$nbd(&(0x7f0000000900), 0xffffffffffffffff) sendmsg$NBD_CMD_DISCONNECT(r6, &(0x7f00000009c0)={&(0x7f00000008c0)={0x10, 0x0, 0x0, 0x4004200}, 0xc, &(0x7f0000000980)={&(0x7f0000000940)={0x28, r7, 0x8, 0x70bd2d, 0x25dfdbfd, {}, [@NBD_ATTR_BACKEND_IDENTIFIER={0x6, 0xa, '-\xed'}, @NBD_ATTR_CLIENT_FLAGS={0xc}]}, 0x28}, 0x1, 0x0, 0x0, 0x4004800}, 0x20000040) (async) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000f00)={r1, 0xe0, &(0x7f0000000e00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, &(0x7f0000000c40)=[0x0, 0x0, 0x0, 0x0, 0x0], ""/16, 0x0, 0x0, 0x0, 0x0, 0x5, 0x7, &(0x7f0000000c80)=[0x0, 0x0, 0x0, 0x0, 0x0], &(0x7f0000000cc0)=[0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], 0x0, 0x8, &(0x7f0000000d00)=[{}, {}, {}], 0x18, 0x10, &(0x7f0000000d40), &(0x7f0000000d80), 0x8, 0x10, 0x8, 0x8, &(0x7f0000000dc0)}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f0000000f80)={0xf, 0xa, &(0x7f0000000a00)=@raw=[@call={0x85, 0x0, 0x0, 0x86}, @map_idx_val={0x18, 0x6, 0x6, 0x0, 0xd, 0x0, 0x0, 0x0, 0x5}, @cb_func={0x18, 0xb, 0x4, 0x0, 0x2}, @ldst={0x1, 0x0, 0x3, 0xa, 0x5, 0xffffffffffffffe0, 0x8}, @alu={0x7, 0x0, 0x0, 0x3, 0xe, 0x1, 0xfffffffffffffff4}, @jmp={0x5, 0x0, 0xb, 0x4, 0x8, 0xfffffffffffffff4, 0x4}, @initr0={0x18, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x20}], &(0x7f0000000a80)='GPL\x00', 0x0, 0xeb, &(0x7f0000000ac0)=""/235, 0x41000, 0x0, '\x00', 0x0, 0x13, r2, 0x8, &(0x7f0000000bc0)={0x7, 0x1}, 0x8, 0x10, &(0x7f0000000c00)={0x0, 0x9, 0x8, 0x8c37}, 0x10, r8, r3, 0x0, &(0x7f0000000f40)=[r3, r1, r0]}, 0x80) 00:26:11 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x2501000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:11 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r4 = openat(r3, &(0x7f0000000040)='./file0\x00', 0x0, 0x46) accept4$unix(r4, &(0x7f0000000140), &(0x7f0000000080)=0x6e, 0x0) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0xfffffffffffffd1f}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) 00:26:11 executing program 4: syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5f800, 0xe, &(0x7f0000000200)=[{&(0x7f0000010b00)="ff43443030310100"/32, 0x20, 0x4}, {&(0x7f0000000180)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x459}, {&(0x7f0000011120)="22001e0000000000001e00080000000008007a090c0c001e0002000001000001010022001e0000000000001e00080000000008007a090c0c001e000200000100000101013400210000000000002164000000000000647a090c0c001e00000000010000011200660069006c0065002e0063006f006c0064002c001f0000000000001f00080000000008007a090c0c001e00020000010000010a00660069006c00650030002c0022000000000000220a0000000000000a7a090c0c001e00000000010000010a00660069006c00650031002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c00650032002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c0065003300"/320, 0x140, 0x7ff}, {&(0x7f0000010000)="01434430303101004c494e55582020202020202020202020202020202020202020202020202020204344524f4d2020202020202020202020202020202020202020202020202020200000000000000000bf000000000000bf000000000000000000000000000000000000000000000000000000000000000001000001010000010008080018000000000000181400000000000000000000160000000022001c0000000000001c00080000000008007a090c0c001e00020000010000010100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202073797a6b616c6c65722020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202047454e49534f494d4147452049534f20393636302f4846532046494c4553595354454d2043524541544f5220284329203139393320452e594f554e4744414c452028432920313939372d32303036204a2e50454152534f4e2f4a2e534348494c4c494e472028432920323030362d32303037204344524b4954205445414d202066696c6533202020202020202020202020202020202020202020202020202020202020202066696c6531202020202020202020202020202020202020202020202020202020202020202066696c6532202020202020202020202020202020202020202020202020202020202020202032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8000}, {&(0x7f0000010580)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d002000200020002000200020002000200020002000200000000000000000bf000000000000bf252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c18000000000000000000001a0000000022001e0000000000001e00080000000008007a090c0c001e00020000010000010100002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000730079007a006b0061006c006c006500720020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000470045004e00490053004f0049004d004100470045002000490053004f00200039003600360030005f004800460053002000460049004c004500530059005300540045004d002000430052004500410054004f005200200028004300290020003100390039003300200045002e0059004f0055004e004700440041004c004500660069006c0065003300200020002000200020002000200020002000200020002000200000660069006c0065003100200020002000200020002000200020002000200020002000200000660069006c0065003200200020002000200020002000200020002000200020002000200032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8800}, {&(0x7f0000010b20)="01001c0000000100000005001d000000010046494c4530000000000000000000", 0x20, 0xa000}, {&(0x7f0000010b40)="01000000001c0001000005000000001d000146494c4530000000000000000000", 0x20, 0xb000}, {&(0x7f00000008c0)="01001e005100010000000069006c0065003000000000e6f04c670b2ba013c1e58303e9e17c85a1ac3999aeea37ed1802774ad402ef3b322d490d2470199200eed331bc5b5aa0bd19339550bcb44dd1d2a89c65d4c5fcefbca7927a9f39f2c1d9f1d82e8162c58b0e38221926369843011268335dde975a91894a17878d4ab9f0470e30095149ab2d874f949c2cefe90edf7b68ff425fcf2c2fbf6d9300e932e83f7e7a8f881a521e714d1dd64ca863c71a27065bb0b038bb70481af46c32578cf59387e9a846b3811ffae03cbc254090234121096e1f4cbba308b9d536f51bb5426e2b0dc8ebefbf235867e4b8c6f5af107183d5925ff20ab394bfaf366a575671913e9934eae9d7", 0x108, 0xc000}, {&(0x7f0000000a00)="88001c0000000000001c00080000000008007a090c0c001e0002000001000001010053500701bace709052050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a0b0c0c001e007a090c0c0035007a090c0c001e0043451c01200000fd000000200000000000000000ed000000000000ed66001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008c00210000000000002164000000000000647a090c0c001e00000000010000010a46494c452e434f4c3b310041410e0254455854756e6978000052520501894e4d0e010066696c652e636f6c64505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000074001d0000000000001d00080000000018007a090c0c001e00020000010000010546494c453052520501894e4d0a010066696c6530505824016d4100000000416d020e0000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860022000000000000220a0000000000000a7a090c0c001e00000000010000010846494c45312e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6531505824416d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008600230000000000002328230000000023287a090c0c001e00000000010000010846494c45322e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6532505824016d8100000000816d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c11bed46e3bd276471e00008600230000000000002328230000000023287a090c1c001e00000000010000010846494c45332e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6533505824016d8100000000816d02000000000000020000000000000000000000000000000554461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000b29e0dab9c906da7ffff7b0bfe3b41214f6c362ba753e16fa4f697365db2095524da3eb3a93c3e212e511de9db25e3ce34c3ec3f12e04386ed76095459835832513cd6d693cf7e5a95639f7dffee256394d2f029c51e1cd234f600d4", 0x3dc, 0xe000}, {&(0x7f0000010f20)="66001d0000000000001d00080000000008007a090c0c001e000200000100000101005252050181505824016d4100000000416d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000066001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860028000000000000281a0400000000041a7a090c0c001e00000000010000010846494c45302e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6530505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000aa00290000000000002900000000000000007a090c0c001e00000000010000010846494c45312e3b3100525205018d4e4d0a010066696c6531505824016da100000000a16d010000000000000100000000000000000000000000000000534c32010008000003746d70001673797a2d696d61676567656e32383037373134373932000566696c6530000566696c653054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000000000000", 0x200, 0xe800}, {&(0x7f0000011260)="22001f0000000000001f009c12080000000008007a090c0c001e0002000001000001010022001e000000007a090c0c001e000200000100000101012c0028000000000000281a040000000004090000000ce71e00000000010000010a00660069006c00650030002c00290000000000002900000000000000007a090c0c801e00000000010000010a00660069006c006500310000000000", 0x97, 0xf804}, {&(0x7f00000004c0)="4552ed010a548701525249505f313939314154484520524f434b20524944474520494e544552432b414e47452050524f544f434f4c2050524f564944455320535550504f525420464f5220504f5349582046494c452053595354454d2053454d414e54494353504c4541534520434f4e545d43542044495343205055424c495348455220464f522053504543494649434154494f4e20534f555243452e2020534545205055424c4953484552204944454e54494649455220494e205052494d41525920564f4c554d452044455343524950544f5220464f5220434f4e54414340206a80f77503494e464f524d4154494f4e2e000000000000000000000000000000000000009613804f537b6dae272540d62919a741bb3068030eb9aaf24e2c553d8cbf396a66332caebe2d45878ccc7a8da845b235c98bf0ae61586f2b", 0x13d, 0x10000}, {&(0x7f0000011480)='syzkallers\x00'/32, 0x20, 0x11000}, {&(0x7f00000114a0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x14000}], 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB="696f636861727365743d6575632d636b3d72656c53ea61786564f02c6d61703d61636f726e2c6e6f6a6f6c6965740000000000000000001aa0f463e1adbd84a37b43f324bb410d55a379e3eb011cb96680920b093efd06b5431eca1a"], 0x1) (async) mount(0x0, &(0x7f0000000140)='./file0\x00', &(0x7f0000000000)='binder\x00', 0x0, 0x0) (async) r0 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r1 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB="14000000", @ANYRES8=r0, @ANYBLOB='\x00'], 0x14}, 0x1, 0x0, 0x0, 0x40841}, 0x0) (async) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000400)=ANY=[@ANYRES32=r0, @ANYRES8=r0]) (async, rerun: 64) sendmsg$NL80211_CMD_TDLS_MGMT(r1, &(0x7f0000000640)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000600)={&(0x7f0000000480)=ANY=[@ANYBLOB="06000000", @ANYRES16=r0, @ANYBLOB="00042abd7000fcdbdf255200000008000300", @ANYRES32=0x0, @ANYBLOB="050089005b0000000a000600ffffffffffff0000"], 0x30}, 0x1, 0x0, 0x0, 0x4000080}, 0x4001) (rerun: 64) r2 = openat(0xffffffffffffff9c, &(0x7f0000004280)='./file0\x00', 0x0, 0x0) getdents64(r2, &(0x7f0000000080)=""/253, 0xfd) (async) r3 = creat(&(0x7f0000000040)='./file0\x00', 0x0) (async) r4 = openat$procfs(0xffffffffffffff9c, &(0x7f00000007c0)='/proc/partitions\x00', 0x0, 0x0) ioctl$KDSETMODE(r3, 0x4b3a, 0x0) r5 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r5, 0x8933, &(0x7f0000000040)={'veth1_vlan\x00', 0x0}) r7 = openat$mice(0xffffffffffffff9c, &(0x7f0000000680), 0x202) execveat(r7, &(0x7f0000000800)='./file0\x00', &(0x7f0000001180)=[&(0x7f0000000880)='overlay\x00', &(0x7f0000000f40)='binder\x00', &(0x7f0000000f80)='binder\x00', &(0x7f0000000fc0)='nl80211\x00', &(0x7f0000001000)='overlay\x00', &(0x7f0000001040)='.\\#+!(\x00', &(0x7f0000001080)='binder\x00', &(0x7f00000010c0)='\x1a-\x00', &(0x7f0000001100)='iso9660\x00', &(0x7f0000001140)='m\x00'], &(0x7f0000001300)=[&(0x7f0000001200)='/proc/partitions\x00', &(0x7f0000001240)='nl80211\x00', &(0x7f0000001280)='nl80211\x00', &(0x7f00000012c0)='veth1_vlan\x00'], 0x400) (async) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)=@ipv4_newaddr={0x28, 0x14, 0x1, 0x2, 0x0, {0x2, 0x18, 0x0, 0x0, r6}, [@IFA_LOCAL={0x8, 0x2, @remote}, @IFA_BROADCAST={0x8, 0x4, @local}]}, 0x28}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f0000000e00)=@delqdisc={0x108, 0x25, 0x8, 0x70bd3c, 0x25dfdbfb, {0x0, 0x0, 0x0, r6, {0x2, 0xc}, {0x3, 0x7}, {0x1, 0x7}}, [@TCA_RATE={0x6, 0x5, {0x7}}, @TCA_STAB={0x4}, @TCA_STAB={0xd8, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x6, 0x6, 0xed, 0x40, 0x1, 0x6, 0x81}}, {0x4}}, {{0x1c, 0x1, {0x2, 0x0, 0x7f, 0x1, 0x2, 0xfffff47b, 0x401, 0x4}}, {0xc, 0x2, [0xa3e6, 0x9, 0x80, 0x1116]}}, {{0x1c, 0x1, {0x7a, 0x5c, 0x1baf, 0x7fffffff, 0x0, 0xea3c, 0x1, 0x5}}, {0xe, 0x2, [0x8000, 0x8, 0x1, 0x1, 0xf413]}}, {{0x1c, 0x1, {0x1, 0x4, 0x36, 0x549, 0x2, 0x8, 0x1, 0x6}}, {0x10, 0x2, [0x1000, 0x991, 0x2, 0xa1, 0x50d, 0x55]}}, {{0x1c, 0x1, {0x28, 0x0, 0x3ff, 0x77c33cda, 0x2, 0x7, 0x8, 0xa}}, {0x18, 0x2, [0xffff, 0x3, 0x3, 0x5, 0x1, 0x800, 0x81, 0x9, 0xd22b, 0x3]}}]}]}, 0x108}, 0x1, 0x0, 0x0, 0x4000000}, 0x41) (async) sendmsg$nl_route_sched(r4, &(0x7f0000000780)={&(0x7f00000006c0)={0x10, 0x0, 0x0, 0x20000000}, 0xc, &(0x7f0000000740)={&(0x7f0000000700)=ANY=[@ANYBLOB="240000002a00100029bd7000fddbdf2500000000", @ANYRES32=r6, @ANYBLOB='\x00'/12], 0x24}, 0x1, 0x0, 0x0, 0x20000000}, 0x4) 00:26:11 executing program 5: r0 = perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x6, 0x8}, 0x2800, 0x0, 0x0, 0x8, 0x0, 0xfffffffc}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) r1 = socket$inet_smc(0x2b, 0x1, 0x0) setsockopt$inet_tcp_TCP_REPAIR_QUEUE(r1, 0x6, 0x14, &(0x7f0000000000), 0x4) (async) ioctl$sock_inet_SIOCDARP(r1, 0x8953, &(0x7f00000000c0)={{0x2, 0x4e22, @loopback}, {0x306, @dev={'\xaa\xaa\xaa\xaa\xaa', 0x3c}}, 0x8, {0x2, 0x4e23, @multicast2}, 'bridge0\x00'}) (async) sendto$inet(r1, &(0x7f00000003c0)="24865e9cfa3f63b0fa8bdfbe73713cb8e51ed61012b387d3a9d99bba3289a50ebc590be4e76db8a9c02ac664b7fdc9f2372c9526d9682652d380fa4a4b6a323e205ffa4943413b1bee88fd5cd044c1560bb20e9871893c01af571858eb6e614ab3674c2c1f579a370ed5a9dff65491cd5787a8e4f2a39e4547cb026b5f5b154ea1c093a110e5e733ba225e179586a289f23119db23a24367998671e4a566477f580d97d9523f106a91310f694f3c3f9b977fedd48b412c594192fe381f6dd3e885fdc0649b58d9f9b4df105cc82f4f9318ecda50a10749c20e72f42e6836b927ea29c357eab0a3e992d8116441e630243ff51f2bad93b3a5a1d4697a3d0dec6143fb5de2d2be769f23b522391063ea74fd27c7146a866e77ed18aa4db2cd68daaa6da76dea0ddbd896b386d440c681b3ae65a41436f8c327b134f71876f55606edce25639380805e242f2549d9a625d6285750e082299d29866ff88bf3f196795c740498230019c981b9ca454826e3855fab11cac77842895da7bc04b78bde02b1f9e441aa87ec6b3ce9b199e35e56035aa1328de5c1057e7e04ac281659f4de96b7a1960bd3e778efeee6b02459ebaa6763783f83542a8d4f8a5dc612b6013ae6165662a65e56e594fee1a43ea459a5ff6adfe3af8628b6b397960cac668198379b97f3bcbca82116fa8b01c55481bc5b3ccc8a1f2726f8262174dfef520c8c4a50a157cb6b841e4c4b7f18a850f1ee993d554fba45961fc1b55c2d4ccb85f36ed3b07fc3926de9ec01034b1a5372d4246351575e0dd01ea32c9d33a413925e08ef62e48148f94390e3e6ada3d363a712f9e270b41d8eee20c939c71f7fd84a5d86f34a20e5da97b4652d6cfc2fa97c973384174cabd3c3a21d74fdceed359fde6a90f9387f2202b3230b7301817e162e4720beaad1dac0ec3633fc04159c776255eb76cf21ddf3067c607c6cd7b00091a54f131f47d497cf0747d11f85a49e11b38f97961e8c3862f969541aa48358c18efa480544a49db09769400053f2fa65930bf0c996b9e2d912ae2b924fef74c95077bb95002442a787de30670dd3dac9f2151ec92f92b82a368bc41c2eeda40b37242c98f7c5c5b04a839e857c3877eb59a1f0a8943e4afed111245d9b5e9ddf482451860c547c5be1306c81d47b5cfde7bb3c0702f762f7b491df1ad538d253281b0f7835ed9a17f95d24ba9034a7a270dbb52f2abcb2a34202492a09f3d572259b5ed08e5dc8b05fb2e039650a53e93fa06f242784697628f2b4c350a1e305827ec6f1fba6d336ab3c816857876be454aab33e2b2ffeef12800da32aecc5ceb3366d9f6c4a6463ff07546d03510c74963d7313391156509a4c8ff8030b034a237e560fd8a8e9df1ffd21dff9a73552a6d0a5d0f2b0e08662304d9f57574d9c9821f1b2cf1437e6863ac485872e862b6be6838e7d7813308d38028a52b73a3d41319973f4bce14387fd9e7a1d69d4bb629aca8beedd59c391efc143df2137e2cb3d5076d04af1e195debe8bdf339639773ce00e2f2e6a76e6e3f6c00390d699ca71da642efb1e846c94813127618322f57fe77bfc533ae597110574ac7ecde4f7bf96fac54a7e6700704e14affc61a922a45ff03e784acab3aacd34ac392eb73b96ff7cf4462796145c96c856aea9d36767000feb3e36b61d58e054ccff9a64c7c45fd0cd1950c729d99f8c7c75494cc2fd56537a04ffc9916b0484177fe83ff8ad8a1ee6fcb373c5981b7c2da3e96eda1cb6d631da5b0deb93ffa25e10d67c72657a76aab29d17ba5f35633bcebaa2870ef0128fc21bb34702a79b3687bf2b7b7e06cb6314471a785f57882ff0c9eeccd8c8b8ff2d1fdbacdb1842fe762b62b5ab9f0f2f8c8ef12dd2ef1435d987caedbc07e72fb224038fc1710d7b53fde6b032d1e13271d6f255174a0493dd5ac9aee93b09f6e725551030b0b01fcb6dbb472118df40c2048569359782ac236a2786e8672a390f484f7925ceea734cdcaacd742a6c45bad32bfa1f2ca1af08371672779e0274573ddb28f3766b012901d2ee77df35fd865630144213708973a10a407cf38a8d7fbd93ca7203a97f51e76ee720cee5b042b45e7c71a4698e6b6928e067d1b1a25073dc66795b6b1e10a86ceca10eb17c041107496dfc572ac9f52a2725a4a5a6a9a2af97c7025f4f009d6dd9f5ae5c5df3261abb9b70aaed42fb5669ee913fdcb965e26707575a93333aec6c23e8a160e80d3fd8cebb11ea33c8d2325b7b92c01013f0217a71466c83761fecdf6ed6fc6799aa3d5446f83b017e68cd34c04e5945a2642b57a29dbbce1a9bfa485c30c6d72aad52aeaacd19f387d05512ad07bc9a8696742a7976a3e4053565d65f37752af1de2e37b0ad1e098553e6ae825a9aaf31b90ff0df2f3186a202884cdbccfd93dcaa70a9259dcd844cf652d5f2dc89386ced421ab6c0ee575899cad677b9d40be7bd041987b3a5e1fb0a1347110c5dfa0c670849a650a3bd23a5bee0e4c6f8cae78738fc42b21ac8e310d4edb1faf0b3bb2f6029c2c856c42ebcef86f671bff671cb8837537ed4994c606a2f4828605cbdb785bf20882ad582f303f30d783c902d2a7a838484fd7da1150922f9197bbcf6f8d2d8701922c0b03a37add226445d27cd4f56ddad152626fd2ddcf2fd99171be0ade5f07d7ffb2dfae6d4ff2462a1601ac483e0d18e85bce674c3005c5de5b2d6896af1a94445563c7bf421dd934b8bb368643faf4f2baff3f26dbe8fea992e819f9f452b001bf03685b890b5cb71a286d15af4730d8b4f51ebc356d1b422e8ecda205945693b4093186ab4339e8dbdd523d99c63e3597ede813100b0c81d5b60e2d203fb00828bc97e3db356c73026078735eb5659dbd3951c5de2591d35a60f7baf6844db1b9ad288b422af8047e4cf71739a4b3cf7cf6e39e21183f17c8a3c3e8ce0d3d0bb0734803815f96b15ba3a292a29aef394fd635bd5a5b0c9af6c93a4d5efa295a6ea8eb717d4761e8dc33f65ce2f9ae317ebd75fdb5278d0e70cbe9552b62dadb293fff2dc394ff1bf32d67c1e8fddc07b5196e97813dcddc783c8221bdd7304c97128095c6461456a248ba4447cdbdc0c178998f686e1eda73bad2edaaaab32c54a9bd36043baf683446cd5e697812d7f84bd6a4606e9fb6ed5cdde73f7b04127274a9948f41ca9ded03a9a85ee7338f00b95a6c67171cd252331ff9d4f4048e98fe4b5e16976dbbafb8a98937f220486d5727801984e06f8ea36f867651dddfbdd5be2f82ae0ecf9df16b9a04c36c92712eca77b90ace7ec3526ea283389a294919945b09ce68fd83a8e55c64086b4cbc51a7b924573f4787cc384d07acc6c1739bc443f9b9d7ab037a490e688096b79b6be7b6811c529dabc23692897855f11d3da5e564d116f42b295f6e9d08ac6fa12fe2f3b049aabae77b7969ca6bab3426f5589f6f1506c0bf2fe4ca6a0dbf1a6de7a4b0375df1d3b62f663155e9e9c8d464e376a1dcb3f14758b040c87bfd158c37878c55eddd21164f251c663177d5a7a6b926a6a698b5c899950be448536fd0e9b0d9aa451015bb559a58b2e32b98f2d868ac8a305bc59d98b953f4c9f6bf8dd81517370530f0a3b9a29debf803df4bc5b2a08b763bfa97fbb90edda72a92c4cc91f38c9de03d4e6ba3613e5b67109bb2a565cae2f39a4c159ff868c17e2217213cb46616403eb391c6059c140083f9544582fe90ca41b7f04f96f26d4a83fac55192799b9d320c0b254f92b6425054b3e729e17910c0da92e970373d37c2f800dbd70da3e8ef97ef122d6bca146cd2f933744346faf66e9a0e1bf4b9a4eb1a6ca2a2ea7baffd99f96d43b493681db3495921f79946de07ac8c592b042b68765a62a89e2eeb24bd30addba3935726558b654b1154f9d04e8e110e1a42393cff063e3a64748310e24abb52e32494ea72618f771fbe9bb26e75a9e22670b3ed019c67d11aa91acf706076640eb7e65b593b0e1952e66d754761180c15fec00c2b227a130f1b2d295775d2e879e1c9ad077e612135572bcd30f813f24871ea77d9e61f0c8cd7c545cd6c1f64fc6d501710627f435bc3d1ffe75d2b0e07bc5c6ddb10d46f07df0058e51776b5e8c03d0869b8f4d430785b2b3367953a12ff48c37f2f2b9034afe7e42349457cb8c16670ec9c6bd59566917c887d3b7635c706c0ce8aa267cb728e72b296d705c8cb8b1886eea0ac6cc216b367d2f7d5c44b5af389ab0fea3e5a26e2a04e4f15c170f548962c3fd779b523065e1c9f3ae44ff30856387f1594bc0fe15bc7e7eb79c576602247a5ad4f6b353230c7052560a23ef2d22711b6d5118251e1d4b6ffcc00398851f50309bdce9a521830b14edffbdd7282e0b76407301783b47c8d8e4d9dd467a2d44920b9a7d0e5b2fc81b730dd41aa96c8580b66557ce712cb50c6e5740aed504292994cd89d52de86b0042ee32cddef2579b6489cc475a999eb16f60b9ba8338dc15fe543d99844ae16446d135301c4fbac817210a5a996d6d8c3957a1fe4762494e683283a23f9b331ae3e26f38d921950c1fbe595551e5e72d78a464b0015141da0f895b43672f22dd973134f75ede8712a37f9f422be9d228a8c06abafa770d4e1535f2b018589be86430943fd4962033d7b52a4bae56049fb04f8bcd5f189acb26c8fa27e8b59e3dca52ea090ccd4fa8018ff58cf3b9e0ac9c8c8cff24c3b4919401bff9a0e7e2dd203f768bfd2c49da13898f35792c61c54d2372222fdf82bd8b901006601c58a97c076cac37dd10ebd954cb8b3307e5f74ebd5c7b40c164f67ca0217db6cccad774799510c89b813ad3257a81dc354eabecc054e8608ed4ecc9ca6021be6c1960105b607b6daada0c07b027d310e1796902626b06a80361ce1d8adedd6a1aad921358ff1e9ca952111be487e078009183e1b8e3e03e0115cac95cdd58ca2395c7a83e6a42620f973257ff8eea95de9b81699b01ba92ed2bcb1929325279a53c73589c4ca1aced30109814b334e4acaf66747b97a2089b54798a41cdf3d2820d67fc21bc97b60a3f17834fb026505526fbca82047377f7d8157422fa2c0a22363df1513cc59ad4c158773770e9fd84d83ff5309300eec129c07665b9f41642200f0a4d53f786b6d0db084c8f25c2df9a1045d46d6fd0b137e5e18da7ef98a4593b0172ad8a9eb2ddd14894c53f9a013bc79877121a2f18cc1d17bccb9c04e7493caba9987d166c04145fcb439c688644fd39eda2dba8b23de6a684bf8202d8fdec76d67c14722d8418337459500a1f271be95406d422c6d3e7dfa5bab5c8e401d3711485c2d3959c795395a338f169d5042861f9ee7b3e249587959812347643e1529fcb1e0a4db543ed2483cbc0e63275caf99b9403f63c99431cb7f3cf18c79349e4b371c49da77438e3961ed8baaf860b61d2bee8f8e44ea0df9317567332bd2cfe796351fe097c9514642615dc4bdffe5b0c373ca723d78d69e88842996c3d6f8a6f67970ef50076a0b1684b1be2d05f951bb3102082f7a4037377db611d646230dd7a3d205a3874d71a9aa87950f6c88e71d14d524472d3088e65277ddf5c060f030f4779f3dfa6a6f244c865ad97601ecbc75c982990a470d1a4b8c030c005a69ad9b8b99d163a7210f289e7cf4baad352bdd6d62400b954f20f1cd4f79b947f64ce70a400a60c5a2696eb1790ee94c6fce650a7826644b4b661a40ac9e56089dc6699564b2b46ae68a9f4addf4544bea673216b1bd3cdcb02eee56e7946ceca17373d56", 0x1000, 0x20000010, &(0x7f0000000180)={0x2, 0x4e21, @loopback}, 0x10) (async, rerun: 32) r2 = socket(0x2b, 0x800, 0x80000000) (rerun: 32) getsockopt$inet_tcp_buf(r2, 0x6, 0xd, &(0x7f0000000040)=""/122, &(0x7f0000000140)=0x7a) (async) dup3(r0, r1, 0x0) 00:26:12 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x2700000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:12 executing program 3: syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5f800, 0xe, &(0x7f0000000200)=[{&(0x7f0000010b00)="ff43443030310100"/32, 0x20, 0x4}, {&(0x7f0000000180)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x459}, {&(0x7f0000011120)="22001e0000000000001e00080000000008007a090c0c001e0002000001000001010022001e0000000000001e00080000000008007a090c0c001e000200000100000101013400210000000000002164000000000000647a090c0c001e00000000010000011200660069006c0065002e0063006f006c0064002c001f0000000000001f00080000000008007a090c0c001e00020000010000010a00660069006c00650030002c0022000000000000220a0000000000000a7a090c0c001e00000000010000010a00660069006c00650031002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c00650032002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c0065003300"/320, 0x140, 0x7ff}, {&(0x7f0000010000)="01434430303101004c494e55582020202020202020202020202020202020202020202020202020204344524f4d2020202020202020202020202020202020202020202020202020200000000000000000bf000000000000bf000000000000000000000000000000000000000000000000000000000000000001000001010000010008080018000000000000181400000000000000000000160000000022001c0000000000001c00080000000008007a090c0c001e00020000010000010100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202073797a6b616c6c65722020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202047454e49534f494d4147452049534f20393636302f4846532046494c4553595354454d2043524541544f5220284329203139393320452e594f554e4744414c452028432920313939372d32303036204a2e50454152534f4e2f4a2e534348494c4c494e472028432920323030362d32303037204344524b4954205445414d202066696c6533202020202020202020202020202020202020202020202020202020202020202066696c6531202020202020202020202020202020202020202020202020202020202020202066696c6532202020202020202020202020202020202020202020202020202020202020202032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8000}, {&(0x7f0000010580)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d002000200020002000200020002000200020002000200000000000000000bf000000000000bf252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c18000000000000000000001a0000000022001e0000000000001e00080000000008007a090c0c001e00020000010000010100002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000730079007a006b0061006c006c006500720020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000470045004e00490053004f0049004d004100470045002000490053004f00200039003600360030005f004800460053002000460049004c004500530059005300540045004d002000430052004500410054004f005200200028004300290020003100390039003300200045002e0059004f0055004e004700440041004c004500660069006c0065003300200020002000200020002000200020002000200020002000200000660069006c0065003100200020002000200020002000200020002000200020002000200000660069006c0065003200200020002000200020002000200020002000200020002000200032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8800}, {&(0x7f0000010b20)="01001c0000000100000005001d000000010046494c4530000000000000000000", 0x20, 0xa000}, {&(0x7f0000010b40)="01000000001c0001000005000000001d000146494c4530000000000000000000", 0x20, 0xb000}, {&(0x7f00000008c0)="01001e005100010000000069006c0065003000000000e6f04c670b2ba013c1e58303e9e17c85a1ac3999aeea37ed1802774ad402ef3b322d490d2470199200eed331bc5b5aa0bd19339550bcb44dd1d2a89c65d4c5fcefbca7927a9f39f2c1d9f1d82e8162c58b0e38221926369843011268335dde975a91894a17878d4ab9f0470e30095149ab2d874f949c2cefe90edf7b68ff425fcf2c2fbf6d9300e932e83f7e7a8f881a521e714d1dd64ca863c71a27065bb0b038bb70481af46c32578cf59387e9a846b3811ffae03cbc254090234121096e1f4cbba308b9d536f51bb5426e2b0dc8ebefbf235867e4b8c6f5af107183d5925ff20ab394bfaf366a575671913e9934eae9d7", 0x108, 0xc000}, {&(0x7f0000000a00)="88001c0000000000001c00080000000008007a090c0c001e0002000001000001010053500701bace709052050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a0b0c0c001e007a090c0c0035007a090c0c001e0043451c01200000fd000000200000000000000000ed000000000000ed66001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008c00210000000000002164000000000000647a090c0c001e00000000010000010a46494c452e434f4c3b310041410e0254455854756e6978000052520501894e4d0e010066696c652e636f6c64505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000074001d0000000000001d00080000000018007a090c0c001e00020000010000010546494c453052520501894e4d0a010066696c6530505824016d4100000000416d020e0000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860022000000000000220a0000000000000a7a090c0c001e00000000010000010846494c45312e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6531505824416d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008600230000000000002328230000000023287a090c0c001e00000000010000010846494c45322e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6532505824016d8100000000816d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c11bed46e3bd276471e00008600230000000000002328230000000023287a090c1c001e00000000010000010846494c45332e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6533505824016d8100000000816d02000000000000020000000000000000000000000000000554461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000b29e0dab9c906da7ffff7b0bfe3b41214f6c362ba753e16fa4f697365db2095524da3eb3a93c3e212e511de9db25e3ce34c3ec3f12e04386ed76095459835832513cd6d693cf7e5a95639f7dffee256394d2f029c51e1cd234f600d4", 0x3dc, 0xe000}, {&(0x7f0000010f20)="66001d0000000000001d00080000000008007a090c0c001e000200000100000101005252050181505824016d4100000000416d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000066001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860028000000000000281a0400000000041a7a090c0c001e00000000010000010846494c45302e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6530505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000aa00290000000000002900000000000000007a090c0c001e00000000010000010846494c45312e3b3100525205018d4e4d0a010066696c6531505824016da100000000a16d010000000000000100000000000000000000000000000000534c32010008000003746d70001673797a2d696d61676567656e32383037373134373932000566696c6530000566696c653054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000000000000", 0x200, 0xe800}, {&(0x7f0000011260)="22001f0000000000001f009c12080000000008007a090c0c001e0002000001000001010022001e000000007a090c0c001e000200000100000101012c0028000000000000281a040000000004090000000ce71e00000000010000010a00660069006c00650030002c00290000000000002900000000000000007a090c0c801e00000000010000010a00660069006c006500310000000000", 0x97, 0xf804}, {&(0x7f00000004c0)="4552ed010a548701525249505f313939314154484520524f434b20524944474520494e544552432b414e47452050524f544f434f4c2050524f564944455320535550504f525420464f5220504f5349582046494c452053595354454d2053454d414e54494353504c4541534520434f4e545d43542044495343205055424c495348455220464f522053504543494649434154494f4e20534f555243452e2020534545205055424c4953484552204944454e54494649455220494e205052494d41525920564f4c554d452044455343524950544f5220464f5220434f4e54414340206a80f77503494e464f524d4154494f4e2e000000000000000000000000000000000000009613804f537b6dae272540d62919a741bb3068030eb9aaf24e2c553d8cbf396a66332caebe2d45878ccc7a8da845b235c98bf0ae61586f2b", 0x13d, 0x10000}, {&(0x7f0000011480)='syzkallers\x00'/32, 0x20, 0x11000}, {&(0x7f00000114a0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x14000}], 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB="696f636861727365743d6575632d636b3d72656c53ea61786564f02c6d61703d61636f726e2c6e6f6a6f6c6965740000000000000000001aa0f463e1adbd84a37b43f324bb410d55a379e3eb011cb96680920b093efd06b5431eca1a"], 0x1) mount(0x0, &(0x7f0000000140)='./file0\x00', &(0x7f0000000000)='binder\x00', 0x0, 0x0) r0 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r1 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB="14000000", @ANYRES8=r0, @ANYBLOB='\x00'], 0x14}, 0x1, 0x0, 0x0, 0x40841}, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000400)=ANY=[@ANYRES32=r0, @ANYRES8=r0]) sendmsg$NL80211_CMD_TDLS_MGMT(r1, &(0x7f0000000640)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000600)={&(0x7f0000000480)=ANY=[@ANYBLOB="06000000", @ANYRES16=r0, @ANYBLOB="00042abd7000fcdbdf255200000008000300", @ANYRES32=0x0, @ANYBLOB="050089005b0000000a000600ffffffffffff0000"], 0x30}, 0x1, 0x0, 0x0, 0x4000080}, 0x4001) r2 = openat(0xffffffffffffff9c, &(0x7f0000004280)='./file0\x00', 0x0, 0x0) getdents64(r2, &(0x7f0000000080)=""/253, 0xfd) r3 = creat(&(0x7f0000000040)='./file0\x00', 0x0) r4 = openat$procfs(0xffffffffffffff9c, &(0x7f00000007c0)='/proc/partitions\x00', 0x0, 0x0) ioctl$KDSETMODE(r3, 0x4b3a, 0x0) r5 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r5, 0x8933, &(0x7f0000000040)={'veth1_vlan\x00', 0x0}) r7 = openat$mice(0xffffffffffffff9c, &(0x7f0000000680), 0x202) execveat(r7, &(0x7f0000000800)='./file0\x00', &(0x7f0000001180)=[&(0x7f0000000880)='overlay\x00', &(0x7f0000000f40)='binder\x00', &(0x7f0000000f80)='binder\x00', &(0x7f0000000fc0)='nl80211\x00', &(0x7f0000001000)='overlay\x00', &(0x7f0000001040)='.\\#+!(\x00', &(0x7f0000001080)='binder\x00', &(0x7f00000010c0)='\x1a-\x00', &(0x7f0000001100)='iso9660\x00', &(0x7f0000001140)='m\x00'], &(0x7f0000001300)=[&(0x7f0000001200)='/proc/partitions\x00', &(0x7f0000001240)='nl80211\x00', &(0x7f0000001280)='nl80211\x00', &(0x7f00000012c0)='veth1_vlan\x00'], 0x400) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)=@ipv4_newaddr={0x28, 0x14, 0x1, 0x2, 0x0, {0x2, 0x18, 0x0, 0x0, r6}, [@IFA_LOCAL={0x8, 0x2, @remote}, @IFA_BROADCAST={0x8, 0x4, @local}]}, 0x28}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f0000000e00)=@delqdisc={0x108, 0x25, 0x8, 0x70bd3c, 0x25dfdbfb, {0x0, 0x0, 0x0, r6, {0x2, 0xc}, {0x3, 0x7}, {0x1, 0x7}}, [@TCA_RATE={0x6, 0x5, {0x7}}, @TCA_STAB={0x4}, @TCA_STAB={0xd8, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x6, 0x6, 0xed, 0x40, 0x1, 0x6, 0x81}}, {0x4}}, {{0x1c, 0x1, {0x2, 0x0, 0x7f, 0x1, 0x2, 0xfffff47b, 0x401, 0x4}}, {0xc, 0x2, [0xa3e6, 0x9, 0x80, 0x1116]}}, {{0x1c, 0x1, {0x7a, 0x5c, 0x1baf, 0x7fffffff, 0x0, 0xea3c, 0x1, 0x5}}, {0xe, 0x2, [0x8000, 0x8, 0x1, 0x1, 0xf413]}}, {{0x1c, 0x1, {0x1, 0x4, 0x36, 0x549, 0x2, 0x8, 0x1, 0x6}}, {0x10, 0x2, [0x1000, 0x991, 0x2, 0xa1, 0x50d, 0x55]}}, {{0x1c, 0x1, {0x28, 0x0, 0x3ff, 0x77c33cda, 0x2, 0x7, 0x8, 0xa}}, {0x18, 0x2, [0xffff, 0x3, 0x3, 0x5, 0x1, 0x800, 0x81, 0x9, 0xd22b, 0x3]}}]}]}, 0x108}, 0x1, 0x0, 0x0, 0x4000000}, 0x41) sendmsg$nl_route_sched(r4, &(0x7f0000000780)={&(0x7f00000006c0)={0x10, 0x0, 0x0, 0x20000000}, 0xc, &(0x7f0000000740)={&(0x7f0000000700)=ANY=[@ANYBLOB="240000002a00100029bd7000fddbdf2500000000", @ANYRES32=r6, @ANYBLOB='\x00'/12], 0x24}, 0x1, 0x0, 0x0, 0x20000000}, 0x4) 00:26:12 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x2e00000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) [ 949.491365] overlayfs: unrecognized mount option "" or missing value [ 949.525054] overlayfs: unrecognized mount option "" or missing value 00:26:12 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) (async) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r4 = openat(r3, &(0x7f0000000040)='./file0\x00', 0x0, 0x46) accept4$unix(r4, &(0x7f0000000140), &(0x7f0000000080)=0x6e, 0x0) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0xfffffffffffffd1f}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) [ 949.561231] overlayfs: unrecognized mount option "" or missing value [ 949.596079] overlayfs: unrecognized mount option "" or missing value 00:26:12 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x2f00000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) [ 949.637764] overlayfs: unrecognized mount option "" or missing value [ 949.664863] overlayfs: unrecognized mount option "" or missing value [ 949.677230] overlayfs: unrecognized mount option "" or missing value 00:26:12 executing program 3: syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5f800, 0xe, &(0x7f0000000200)=[{&(0x7f0000010b00)="ff43443030310100"/32, 0x20, 0x4}, {&(0x7f0000000180)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x459}, {&(0x7f0000011120)="22001e0000000000001e00080000000008007a090c0c001e0002000001000001010022001e0000000000001e00080000000008007a090c0c001e000200000100000101013400210000000000002164000000000000647a090c0c001e00000000010000011200660069006c0065002e0063006f006c0064002c001f0000000000001f00080000000008007a090c0c001e00020000010000010a00660069006c00650030002c0022000000000000220a0000000000000a7a090c0c001e00000000010000010a00660069006c00650031002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c00650032002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c0065003300"/320, 0x140, 0x7ff}, {&(0x7f0000010000)="01434430303101004c494e55582020202020202020202020202020202020202020202020202020204344524f4d2020202020202020202020202020202020202020202020202020200000000000000000bf000000000000bf000000000000000000000000000000000000000000000000000000000000000001000001010000010008080018000000000000181400000000000000000000160000000022001c0000000000001c00080000000008007a090c0c001e00020000010000010100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202073797a6b616c6c65722020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202047454e49534f494d4147452049534f20393636302f4846532046494c4553595354454d2043524541544f5220284329203139393320452e594f554e4744414c452028432920313939372d32303036204a2e50454152534f4e2f4a2e534348494c4c494e472028432920323030362d32303037204344524b4954205445414d202066696c6533202020202020202020202020202020202020202020202020202020202020202066696c6531202020202020202020202020202020202020202020202020202020202020202066696c6532202020202020202020202020202020202020202020202020202020202020202032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8000}, {&(0x7f0000010580)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d002000200020002000200020002000200020002000200000000000000000bf000000000000bf252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c18000000000000000000001a0000000022001e0000000000001e00080000000008007a090c0c001e00020000010000010100002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000730079007a006b0061006c006c006500720020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000470045004e00490053004f0049004d004100470045002000490053004f00200039003600360030005f004800460053002000460049004c004500530059005300540045004d002000430052004500410054004f005200200028004300290020003100390039003300200045002e0059004f0055004e004700440041004c004500660069006c0065003300200020002000200020002000200020002000200020002000200000660069006c0065003100200020002000200020002000200020002000200020002000200000660069006c0065003200200020002000200020002000200020002000200020002000200032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8800}, {&(0x7f0000010b20)="01001c0000000100000005001d000000010046494c4530000000000000000000", 0x20, 0xa000}, {&(0x7f0000010b40)="01000000001c0001000005000000001d000146494c4530000000000000000000", 0x20, 0xb000}, {&(0x7f00000008c0)="01001e005100010000000069006c0065003000000000e6f04c670b2ba013c1e58303e9e17c85a1ac3999aeea37ed1802774ad402ef3b322d490d2470199200eed331bc5b5aa0bd19339550bcb44dd1d2a89c65d4c5fcefbca7927a9f39f2c1d9f1d82e8162c58b0e38221926369843011268335dde975a91894a17878d4ab9f0470e30095149ab2d874f949c2cefe90edf7b68ff425fcf2c2fbf6d9300e932e83f7e7a8f881a521e714d1dd64ca863c71a27065bb0b038bb70481af46c32578cf59387e9a846b3811ffae03cbc254090234121096e1f4cbba308b9d536f51bb5426e2b0dc8ebefbf235867e4b8c6f5af107183d5925ff20ab394bfaf366a575671913e9934eae9d7", 0x108, 0xc000}, {&(0x7f0000000a00)="88001c0000000000001c00080000000008007a090c0c001e0002000001000001010053500701bace709052050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a0b0c0c001e007a090c0c0035007a090c0c001e0043451c01200000fd000000200000000000000000ed000000000000ed66001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008c00210000000000002164000000000000647a090c0c001e00000000010000010a46494c452e434f4c3b310041410e0254455854756e6978000052520501894e4d0e010066696c652e636f6c64505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000074001d0000000000001d00080000000018007a090c0c001e00020000010000010546494c453052520501894e4d0a010066696c6530505824016d4100000000416d020e0000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860022000000000000220a0000000000000a7a090c0c001e00000000010000010846494c45312e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6531505824416d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008600230000000000002328230000000023287a090c0c001e00000000010000010846494c45322e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6532505824016d8100000000816d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c11bed46e3bd276471e00008600230000000000002328230000000023287a090c1c001e00000000010000010846494c45332e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6533505824016d8100000000816d02000000000000020000000000000000000000000000000554461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000b29e0dab9c906da7ffff7b0bfe3b41214f6c362ba753e16fa4f697365db2095524da3eb3a93c3e212e511de9db25e3ce34c3ec3f12e04386ed76095459835832513cd6d693cf7e5a95639f7dffee256394d2f029c51e1cd234f600d4", 0x3dc, 0xe000}, {&(0x7f0000010f20)="66001d0000000000001d00080000000008007a090c0c001e000200000100000101005252050181505824016d4100000000416d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000066001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860028000000000000281a0400000000041a7a090c0c001e00000000010000010846494c45302e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6530505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000aa00290000000000002900000000000000007a090c0c001e00000000010000010846494c45312e3b3100525205018d4e4d0a010066696c6531505824016da100000000a16d010000000000000100000000000000000000000000000000534c32010008000003746d70001673797a2d696d61676567656e32383037373134373932000566696c6530000566696c653054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000000000000", 0x200, 0xe800}, {&(0x7f0000011260)="22001f0000000000001f009c12080000000008007a090c0c001e0002000001000001010022001e000000007a090c0c001e000200000100000101012c0028000000000000281a040000000004090000000ce71e00000000010000010a00660069006c00650030002c00290000000000002900000000000000007a090c0c801e00000000010000010a00660069006c006500310000000000", 0x97, 0xf804}, {&(0x7f00000004c0)="4552ed010a548701525249505f313939314154484520524f434b20524944474520494e544552432b414e47452050524f544f434f4c2050524f564944455320535550504f525420464f5220504f5349582046494c452053595354454d2053454d414e54494353504c4541534520434f4e545d43542044495343205055424c495348455220464f522053504543494649434154494f4e20534f555243452e2020534545205055424c4953484552204944454e54494649455220494e205052494d41525920564f4c554d452044455343524950544f5220464f5220434f4e54414340206a80f77503494e464f524d4154494f4e2e000000000000000000000000000000000000009613804f537b6dae272540d62919a741bb3068030eb9aaf24e2c553d8cbf396a66332caebe2d45878ccc7a8da845b235c98bf0ae61586f2b", 0x13d, 0x10000}, {&(0x7f0000011480)='syzkallers\x00'/32, 0x20, 0x11000}, {&(0x7f00000114a0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x14000}], 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB="696f636861727365743d6575632d636b3d72656c53ea61786564f02c6d61703d61636f726e2c6e6f6a6f6c6965740000000000000000001aa0f463e1adbd84a37b43f324bb410d55a379e3eb011cb96680920b093efd06b5431eca1a"], 0x1) mount(0x0, &(0x7f0000000140)='./file0\x00', &(0x7f0000000000)='binder\x00', 0x0, 0x0) r0 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r1 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB="14000000", @ANYRES8=r0, @ANYBLOB='\x00'], 0x14}, 0x1, 0x0, 0x0, 0x40841}, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000400)=ANY=[@ANYRES32=r0, @ANYRES8=r0]) sendmsg$NL80211_CMD_TDLS_MGMT(r1, &(0x7f0000000640)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000600)={&(0x7f0000000480)=ANY=[@ANYBLOB="06000000", @ANYRES16=r0, @ANYBLOB="00042abd7000fcdbdf255200000008000300", @ANYRES32=0x0, @ANYBLOB="050089005b0000000a000600ffffffffffff0000"], 0x30}, 0x1, 0x0, 0x0, 0x4000080}, 0x4001) r2 = openat(0xffffffffffffff9c, &(0x7f0000004280)='./file0\x00', 0x0, 0x0) getdents64(r2, &(0x7f0000000080)=""/253, 0xfd) r3 = creat(&(0x7f0000000040)='./file0\x00', 0x0) r4 = openat$procfs(0xffffffffffffff9c, &(0x7f00000007c0)='/proc/partitions\x00', 0x0, 0x0) ioctl$KDSETMODE(r3, 0x4b3a, 0x0) r5 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r5, 0x8933, &(0x7f0000000040)={'veth1_vlan\x00', 0x0}) r7 = openat$mice(0xffffffffffffff9c, &(0x7f0000000680), 0x202) execveat(r7, &(0x7f0000000800)='./file0\x00', &(0x7f0000001180)=[&(0x7f0000000880)='overlay\x00', &(0x7f0000000f40)='binder\x00', &(0x7f0000000f80)='binder\x00', &(0x7f0000000fc0)='nl80211\x00', &(0x7f0000001000)='overlay\x00', &(0x7f0000001040)='.\\#+!(\x00', &(0x7f0000001080)='binder\x00', &(0x7f00000010c0)='\x1a-\x00', &(0x7f0000001100)='iso9660\x00', &(0x7f0000001140)='m\x00'], &(0x7f0000001300)=[&(0x7f0000001200)='/proc/partitions\x00', &(0x7f0000001240)='nl80211\x00', &(0x7f0000001280)='nl80211\x00', &(0x7f00000012c0)='veth1_vlan\x00'], 0x400) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)=@ipv4_newaddr={0x28, 0x14, 0x1, 0x2, 0x0, {0x2, 0x18, 0x0, 0x0, r6}, [@IFA_LOCAL={0x8, 0x2, @remote}, @IFA_BROADCAST={0x8, 0x4, @local}]}, 0x28}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f0000000e00)=@delqdisc={0x108, 0x25, 0x8, 0x70bd3c, 0x25dfdbfb, {0x0, 0x0, 0x0, r6, {0x2, 0xc}, {0x3, 0x7}, {0x1, 0x7}}, [@TCA_RATE={0x6, 0x5, {0x7}}, @TCA_STAB={0x4}, @TCA_STAB={0xd8, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x6, 0x6, 0xed, 0x40, 0x1, 0x6, 0x81}}, {0x4}}, {{0x1c, 0x1, {0x2, 0x0, 0x7f, 0x1, 0x2, 0xfffff47b, 0x401, 0x4}}, {0xc, 0x2, [0xa3e6, 0x9, 0x80, 0x1116]}}, {{0x1c, 0x1, {0x7a, 0x5c, 0x1baf, 0x7fffffff, 0x0, 0xea3c, 0x1, 0x5}}, {0xe, 0x2, [0x8000, 0x8, 0x1, 0x1, 0xf413]}}, {{0x1c, 0x1, {0x1, 0x4, 0x36, 0x549, 0x2, 0x8, 0x1, 0x6}}, {0x10, 0x2, [0x1000, 0x991, 0x2, 0xa1, 0x50d, 0x55]}}, {{0x1c, 0x1, {0x28, 0x0, 0x3ff, 0x77c33cda, 0x2, 0x7, 0x8, 0xa}}, {0x18, 0x2, [0xffff, 0x3, 0x3, 0x5, 0x1, 0x800, 0x81, 0x9, 0xd22b, 0x3]}}]}]}, 0x108}, 0x1, 0x0, 0x0, 0x4000000}, 0x41) sendmsg$nl_route_sched(r4, &(0x7f0000000780)={&(0x7f00000006c0)={0x10, 0x0, 0x0, 0x20000000}, 0xc, &(0x7f0000000740)={&(0x7f0000000700)=ANY=[@ANYBLOB="240000002a00100029bd7000fddbdf2500000000", @ANYRES32=r6, @ANYBLOB='\x00'/12], 0x24}, 0x1, 0x0, 0x0, 0x20000000}, 0x4) [ 949.723420] overlayfs: unrecognized mount option "" or missing value [ 949.730475] overlayfs: unrecognized mount option "" or missing value [ 949.770364] overlayfs: unrecognized mount option "" or missing value [ 949.813172] overlayfs: unrecognized mount option "" or missing value [ 949.853369] overlayfs: unrecognized mount option "" or missing value [ 949.861993] overlayfs: unrecognized mount option "" or missing value [ 949.893048] overlayfs: unrecognized mount option "" or missing value [ 949.900170] overlayfs: unrecognized mount option "" or missing value [ 949.916052] overlayfs: unrecognized mount option "" or missing value [ 949.923435] overlayfs: unrecognized mount option "" or missing value [ 949.930537] overlayfs: unrecognized mount option "" or missing value [ 949.963085] overlayfs: unrecognized mount option "" or missing value [ 949.970234] overlayfs: unrecognized mount option "" or missing value [ 949.992217] overlayfs: unrecognized mount option "" or missing value [ 950.037741] overlayfs: unrecognized mount option "" or missing value [ 950.054143] overlayfs: unrecognized mount option "" or missing value [ 950.071224] overlayfs: unrecognized mount option "" or missing value [ 950.088075] overlayfs: unrecognized mount option "" or missing value [ 950.103513] overlayfs: unrecognized mount option "" or missing value [ 950.110761] overlayfs: unrecognized mount option "" or missing value [ 950.120803] overlayfs: unrecognized mount option "" or missing value [ 950.129345] overlayfs: unrecognized mount option "" or missing value [ 950.137591] overlayfs: unrecognized mount option "" or missing value [ 950.147490] overlayfs: unrecognized mount option "" or missing value [ 950.155923] overlayfs: unrecognized mount option "" or missing value [ 950.164321] overlayfs: unrecognized mount option "" or missing value [ 950.171976] overlayfs: unrecognized mount option "" or missing value 00:26:12 executing program 2: openat$rfkill(0xffffffffffffff9c, 0x0, 0x408000, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x40, 0x0) setrlimit(0xb, &(0x7f0000000100)={0x5846cb3c, 0x8200}) sched_setscheduler(0x0, 0x0, &(0x7f0000000000)=0x5) getpid() sched_setaffinity(0x0, 0x8, &(0x7f0000000080)=0x1) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff}) connect$unix(r0, 0x0, 0x0) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) recvmmsg(r0, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r1 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) getresgid(&(0x7f0000000040), &(0x7f0000000180)=0x0, &(0x7f0000000240)) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000280)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r1, @ANYBLOB=',rootmode=000000000000100040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=r2]) openat$rfkill(0xffffffffffffff9c, 0x0, 0x408000, 0x0) (async) openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x40, 0x0) (async) setrlimit(0xb, &(0x7f0000000100)={0x5846cb3c, 0x8200}) (async) sched_setscheduler(0x0, 0x0, &(0x7f0000000000)=0x5) (async) getpid() (async) sched_setaffinity(0x0, 0x8, &(0x7f0000000080)=0x1) (async) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)) (async) connect$unix(r0, 0x0, 0x0) (async) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) (async) recvmmsg(r0, &(0x7f00000000c0), 0x10106, 0x2, 0x0) (async) openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) (async) getresgid(&(0x7f0000000040), &(0x7f0000000180), &(0x7f0000000240)) (async) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000280)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r1, @ANYBLOB=',rootmode=000000000000100040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=r2]) (async) 00:26:12 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x3400000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:12 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r4 = openat(r3, &(0x7f0000000040)='./file0\x00', 0x0, 0x46) accept4$unix(r4, &(0x7f0000000140), &(0x7f0000000080)=0x6e, 0x0) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0xfffffffffffffd1f}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)) (async) pipe(&(0x7f00000000c0)) (async) openat(r3, &(0x7f0000000040)='./file0\x00', 0x0, 0x46) (async) accept4$unix(r4, &(0x7f0000000140), &(0x7f0000000080)=0x6e, 0x0) (async) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) (async) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0xfffffffffffffd1f}], 0x1, 0x0) (async) write$binfmt_misc(r3, 0x0, 0x4) (async) write$binfmt_elf64(r1, &(0x7f0000000ac0)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40}, [{}]}, 0x78) (async) 00:26:12 executing program 3: syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5f800, 0xe, &(0x7f0000000200)=[{&(0x7f0000010b00)="ff43443030310100"/32, 0x20, 0x4}, {&(0x7f0000000180)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x459}, {&(0x7f0000011120)="22001e0000000000001e00080000000008007a090c0c001e0002000001000001010022001e0000000000001e00080000000008007a090c0c001e000200000100000101013400210000000000002164000000000000647a090c0c001e00000000010000011200660069006c0065002e0063006f006c0064002c001f0000000000001f00080000000008007a090c0c001e00020000010000010a00660069006c00650030002c0022000000000000220a0000000000000a7a090c0c001e00000000010000010a00660069006c00650031002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c00650032002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c0065003300"/320, 0x140, 0x7ff}, {&(0x7f0000010000)="01434430303101004c494e55582020202020202020202020202020202020202020202020202020204344524f4d2020202020202020202020202020202020202020202020202020200000000000000000bf000000000000bf000000000000000000000000000000000000000000000000000000000000000001000001010000010008080018000000000000181400000000000000000000160000000022001c0000000000001c00080000000008007a090c0c001e00020000010000010100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202073797a6b616c6c65722020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202047454e49534f494d4147452049534f20393636302f4846532046494c4553595354454d2043524541544f5220284329203139393320452e594f554e4744414c452028432920313939372d32303036204a2e50454152534f4e2f4a2e534348494c4c494e472028432920323030362d32303037204344524b4954205445414d202066696c6533202020202020202020202020202020202020202020202020202020202020202066696c6531202020202020202020202020202020202020202020202020202020202020202066696c6532202020202020202020202020202020202020202020202020202020202020202032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8000}, {&(0x7f0000010580)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d002000200020002000200020002000200020002000200000000000000000bf000000000000bf252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c18000000000000000000001a0000000022001e0000000000001e00080000000008007a090c0c001e00020000010000010100002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000730079007a006b0061006c006c006500720020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000470045004e00490053004f0049004d004100470045002000490053004f00200039003600360030005f004800460053002000460049004c004500530059005300540045004d002000430052004500410054004f005200200028004300290020003100390039003300200045002e0059004f0055004e004700440041004c004500660069006c0065003300200020002000200020002000200020002000200020002000200000660069006c0065003100200020002000200020002000200020002000200020002000200000660069006c0065003200200020002000200020002000200020002000200020002000200032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8800}, {&(0x7f0000010b20)="01001c0000000100000005001d000000010046494c4530000000000000000000", 0x20, 0xa000}, {&(0x7f0000010b40)="01000000001c0001000005000000001d000146494c4530000000000000000000", 0x20, 0xb000}, {&(0x7f00000008c0)="01001e005100010000000069006c0065003000000000e6f04c670b2ba013c1e58303e9e17c85a1ac3999aeea37ed1802774ad402ef3b322d490d2470199200eed331bc5b5aa0bd19339550bcb44dd1d2a89c65d4c5fcefbca7927a9f39f2c1d9f1d82e8162c58b0e38221926369843011268335dde975a91894a17878d4ab9f0470e30095149ab2d874f949c2cefe90edf7b68ff425fcf2c2fbf6d9300e932e83f7e7a8f881a521e714d1dd64ca863c71a27065bb0b038bb70481af46c32578cf59387e9a846b3811ffae03cbc254090234121096e1f4cbba308b9d536f51bb5426e2b0dc8ebefbf235867e4b8c6f5af107183d5925ff20ab394bfaf366a575671913e9934eae9d7", 0x108, 0xc000}, {&(0x7f0000000a00)="88001c0000000000001c00080000000008007a090c0c001e0002000001000001010053500701bace709052050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a0b0c0c001e007a090c0c0035007a090c0c001e0043451c01200000fd000000200000000000000000ed000000000000ed66001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008c00210000000000002164000000000000647a090c0c001e00000000010000010a46494c452e434f4c3b310041410e0254455854756e6978000052520501894e4d0e010066696c652e636f6c64505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000074001d0000000000001d00080000000018007a090c0c001e00020000010000010546494c453052520501894e4d0a010066696c6530505824016d4100000000416d020e0000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860022000000000000220a0000000000000a7a090c0c001e00000000010000010846494c45312e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6531505824416d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008600230000000000002328230000000023287a090c0c001e00000000010000010846494c45322e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6532505824016d8100000000816d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c11bed46e3bd276471e00008600230000000000002328230000000023287a090c1c001e00000000010000010846494c45332e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6533505824016d8100000000816d02000000000000020000000000000000000000000000000554461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000b29e0dab9c906da7ffff7b0bfe3b41214f6c362ba753e16fa4f697365db2095524da3eb3a93c3e212e511de9db25e3ce34c3ec3f12e04386ed76095459835832513cd6d693cf7e5a95639f7dffee256394d2f029c51e1cd234f600d4", 0x3dc, 0xe000}, {&(0x7f0000010f20)="66001d0000000000001d00080000000008007a090c0c001e000200000100000101005252050181505824016d4100000000416d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000066001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860028000000000000281a0400000000041a7a090c0c001e00000000010000010846494c45302e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6530505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000aa00290000000000002900000000000000007a090c0c001e00000000010000010846494c45312e3b3100525205018d4e4d0a010066696c6531505824016da100000000a16d010000000000000100000000000000000000000000000000534c32010008000003746d70001673797a2d696d61676567656e32383037373134373932000566696c6530000566696c653054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000000000000", 0x200, 0xe800}, {&(0x7f0000011260)="22001f0000000000001f009c12080000000008007a090c0c001e0002000001000001010022001e000000007a090c0c001e000200000100000101012c0028000000000000281a040000000004090000000ce71e00000000010000010a00660069006c00650030002c00290000000000002900000000000000007a090c0c801e00000000010000010a00660069006c006500310000000000", 0x97, 0xf804}, {&(0x7f00000004c0)="4552ed010a548701525249505f313939314154484520524f434b20524944474520494e544552432b414e47452050524f544f434f4c2050524f564944455320535550504f525420464f5220504f5349582046494c452053595354454d2053454d414e54494353504c4541534520434f4e545d43542044495343205055424c495348455220464f522053504543494649434154494f4e20534f555243452e2020534545205055424c4953484552204944454e54494649455220494e205052494d41525920564f4c554d452044455343524950544f5220464f5220434f4e54414340206a80f77503494e464f524d4154494f4e2e000000000000000000000000000000000000009613804f537b6dae272540d62919a741bb3068030eb9aaf24e2c553d8cbf396a66332caebe2d45878ccc7a8da845b235c98bf0ae61586f2b", 0x13d, 0x10000}, {&(0x7f0000011480)='syzkallers\x00'/32, 0x20, 0x11000}, {&(0x7f00000114a0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x14000}], 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB="696f636861727365743d6575632d636b3d72656c53ea61786564f02c6d61703d61636f726e2c6e6f6a6f6c6965740000000000000000001aa0f463e1adbd84a37b43f324bb410d55a379e3eb011cb96680920b093efd06b5431eca1a"], 0x1) mount(0x0, &(0x7f0000000140)='./file0\x00', &(0x7f0000000000)='binder\x00', 0x0, 0x0) r0 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r1 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB="14000000", @ANYRES8=r0, @ANYBLOB='\x00'], 0x14}, 0x1, 0x0, 0x0, 0x40841}, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000400)=ANY=[@ANYRES32=r0, @ANYRES8=r0]) sendmsg$NL80211_CMD_TDLS_MGMT(r1, &(0x7f0000000640)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000600)={&(0x7f0000000480)=ANY=[@ANYBLOB="06000000", @ANYRES16=r0, @ANYBLOB="00042abd7000fcdbdf255200000008000300", @ANYRES32=0x0, @ANYBLOB="050089005b0000000a000600ffffffffffff0000"], 0x30}, 0x1, 0x0, 0x0, 0x4000080}, 0x4001) r2 = openat(0xffffffffffffff9c, &(0x7f0000004280)='./file0\x00', 0x0, 0x0) getdents64(r2, &(0x7f0000000080)=""/253, 0xfd) r3 = creat(&(0x7f0000000040)='./file0\x00', 0x0) r4 = openat$procfs(0xffffffffffffff9c, &(0x7f00000007c0)='/proc/partitions\x00', 0x0, 0x0) ioctl$KDSETMODE(r3, 0x4b3a, 0x0) r5 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r5, 0x8933, &(0x7f0000000040)={'veth1_vlan\x00', 0x0}) r7 = openat$mice(0xffffffffffffff9c, &(0x7f0000000680), 0x202) execveat(r7, &(0x7f0000000800)='./file0\x00', &(0x7f0000001180)=[&(0x7f0000000880)='overlay\x00', &(0x7f0000000f40)='binder\x00', &(0x7f0000000f80)='binder\x00', &(0x7f0000000fc0)='nl80211\x00', &(0x7f0000001000)='overlay\x00', &(0x7f0000001040)='.\\#+!(\x00', &(0x7f0000001080)='binder\x00', &(0x7f00000010c0)='\x1a-\x00', &(0x7f0000001100)='iso9660\x00', &(0x7f0000001140)='m\x00'], &(0x7f0000001300)=[&(0x7f0000001200)='/proc/partitions\x00', &(0x7f0000001240)='nl80211\x00', &(0x7f0000001280)='nl80211\x00', &(0x7f00000012c0)='veth1_vlan\x00'], 0x400) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)=@ipv4_newaddr={0x28, 0x14, 0x1, 0x2, 0x0, {0x2, 0x18, 0x0, 0x0, r6}, [@IFA_LOCAL={0x8, 0x2, @remote}, @IFA_BROADCAST={0x8, 0x4, @local}]}, 0x28}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f0000000e00)=@delqdisc={0x108, 0x25, 0x8, 0x70bd3c, 0x25dfdbfb, {0x0, 0x0, 0x0, r6, {0x2, 0xc}, {0x3, 0x7}, {0x1, 0x7}}, [@TCA_RATE={0x6, 0x5, {0x7}}, @TCA_STAB={0x4}, @TCA_STAB={0xd8, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x6, 0x6, 0xed, 0x40, 0x1, 0x6, 0x81}}, {0x4}}, {{0x1c, 0x1, {0x2, 0x0, 0x7f, 0x1, 0x2, 0xfffff47b, 0x401, 0x4}}, {0xc, 0x2, [0xa3e6, 0x9, 0x80, 0x1116]}}, {{0x1c, 0x1, {0x7a, 0x5c, 0x1baf, 0x7fffffff, 0x0, 0xea3c, 0x1, 0x5}}, {0xe, 0x2, [0x8000, 0x8, 0x1, 0x1, 0xf413]}}, {{0x1c, 0x1, {0x1, 0x4, 0x36, 0x549, 0x2, 0x8, 0x1, 0x6}}, {0x10, 0x2, [0x1000, 0x991, 0x2, 0xa1, 0x50d, 0x55]}}, {{0x1c, 0x1, {0x28, 0x0, 0x3ff, 0x77c33cda, 0x2, 0x7, 0x8, 0xa}}, {0x18, 0x2, [0xffff, 0x3, 0x3, 0x5, 0x1, 0x800, 0x81, 0x9, 0xd22b, 0x3]}}]}]}, 0x108}, 0x1, 0x0, 0x0, 0x4000000}, 0x41) sendmsg$nl_route_sched(r4, &(0x7f0000000780)={&(0x7f00000006c0)={0x10, 0x0, 0x0, 0x20000000}, 0xc, &(0x7f0000000740)={&(0x7f0000000700)=ANY=[@ANYBLOB="240000002a00100029bd7000fddbdf2500000000", @ANYRES32=r6, @ANYBLOB='\x00'/12], 0x24}, 0x1, 0x0, 0x0, 0x20000000}, 0x4) [ 950.193422] overlayfs: unrecognized mount option "" or missing value [ 950.200727] overlayfs: unrecognized mount option "" or missing value [ 950.213105] overlayfs: unrecognized mount option "" or missing value [ 950.220225] overlayfs: unrecognized mount option "" or missing value [ 950.236937] overlayfs: unrecognized mount option "" or missing value 00:26:12 executing program 4: syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5f800, 0xe, &(0x7f0000000200)=[{&(0x7f0000010b00)="ff43443030310100"/32, 0x20, 0x4}, {&(0x7f0000000180)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x459}, {&(0x7f0000011120)="22001e0000000000001e00080000000008007a090c0c001e0002000001000001010022001e0000000000001e00080000000008007a090c0c001e000200000100000101013400210000000000002164000000000000647a090c0c001e00000000010000011200660069006c0065002e0063006f006c0064002c001f0000000000001f00080000000008007a090c0c001e00020000010000010a00660069006c00650030002c0022000000000000220a0000000000000a7a090c0c001e00000000010000010a00660069006c00650031002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c00650032002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c0065003300"/320, 0x140, 0x7ff}, {&(0x7f0000010000)="01434430303101004c494e55582020202020202020202020202020202020202020202020202020204344524f4d2020202020202020202020202020202020202020202020202020200000000000000000bf000000000000bf000000000000000000000000000000000000000000000000000000000000000001000001010000010008080018000000000000181400000000000000000000160000000022001c0000000000001c00080000000008007a090c0c001e00020000010000010100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202073797a6b616c6c65722020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202047454e49534f494d4147452049534f20393636302f4846532046494c4553595354454d2043524541544f5220284329203139393320452e594f554e4744414c452028432920313939372d32303036204a2e50454152534f4e2f4a2e534348494c4c494e472028432920323030362d32303037204344524b4954205445414d202066696c6533202020202020202020202020202020202020202020202020202020202020202066696c6531202020202020202020202020202020202020202020202020202020202020202066696c6532202020202020202020202020202020202020202020202020202020202020202032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8000}, {&(0x7f0000010580)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d002000200020002000200020002000200020002000200000000000000000bf000000000000bf252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c18000000000000000000001a0000000022001e0000000000001e00080000000008007a090c0c001e00020000010000010100002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000730079007a006b0061006c006c006500720020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000470045004e00490053004f0049004d004100470045002000490053004f00200039003600360030005f004800460053002000460049004c004500530059005300540045004d002000430052004500410054004f005200200028004300290020003100390039003300200045002e0059004f0055004e004700440041004c004500660069006c0065003300200020002000200020002000200020002000200020002000200000660069006c0065003100200020002000200020002000200020002000200020002000200000660069006c0065003200200020002000200020002000200020002000200020002000200032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8800}, {&(0x7f0000010b20)="01001c0000000100000005001d000000010046494c4530000000000000000000", 0x20, 0xa000}, {&(0x7f0000010b40)="01000000001c0001000005000000001d000146494c4530000000000000000000", 0x20, 0xb000}, {&(0x7f00000008c0)="01001e005100010000000069006c0065003000000000e6f04c670b2ba013c1e58303e9e17c85a1ac3999aeea37ed1802774ad402ef3b322d490d2470199200eed331bc5b5aa0bd19339550bcb44dd1d2a89c65d4c5fcefbca7927a9f39f2c1d9f1d82e8162c58b0e38221926369843011268335dde975a91894a17878d4ab9f0470e30095149ab2d874f949c2cefe90edf7b68ff425fcf2c2fbf6d9300e932e83f7e7a8f881a521e714d1dd64ca863c71a27065bb0b038bb70481af46c32578cf59387e9a846b3811ffae03cbc254090234121096e1f4cbba308b9d536f51bb5426e2b0dc8ebefbf235867e4b8c6f5af107183d5925ff20ab394bfaf366a575671913e9934eae9d7", 0x108, 0xc000}, {&(0x7f0000000a00)="88001c0000000000001c00080000000008007a090c0c001e0002000001000001010053500701bace709052050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a0b0c0c001e007a090c0c0035007a090c0c001e0043451c01200000fd000000200000000000000000ed000000000000ed66001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008c00210000000000002164000000000000647a090c0c001e00000000010000010a46494c452e434f4c3b310041410e0254455854756e6978000052520501894e4d0e010066696c652e636f6c64505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000074001d0000000000001d00080000000018007a090c0c001e00020000010000010546494c453052520501894e4d0a010066696c6530505824016d4100000000416d020e0000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860022000000000000220a0000000000000a7a090c0c001e00000000010000010846494c45312e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6531505824416d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008600230000000000002328230000000023287a090c0c001e00000000010000010846494c45322e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6532505824016d8100000000816d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c11bed46e3bd276471e00008600230000000000002328230000000023287a090c1c001e00000000010000010846494c45332e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6533505824016d8100000000816d02000000000000020000000000000000000000000000000554461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000b29e0dab9c906da7ffff7b0bfe3b41214f6c362ba753e16fa4f697365db2095524da3eb3a93c3e212e511de9db25e3ce34c3ec3f12e04386ed76095459835832513cd6d693cf7e5a95639f7dffee256394d2f029c51e1cd234f600d4", 0x3dc, 0xe000}, {&(0x7f0000010f20)="66001d0000000000001d00080000000008007a090c0c001e000200000100000101005252050181505824016d4100000000416d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000066001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860028000000000000281a0400000000041a7a090c0c001e00000000010000010846494c45302e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6530505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000aa00290000000000002900000000000000007a090c0c001e00000000010000010846494c45312e3b3100525205018d4e4d0a010066696c6531505824016da100000000a16d010000000000000100000000000000000000000000000000534c32010008000003746d70001673797a2d696d61676567656e32383037373134373932000566696c6530000566696c653054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000000000000", 0x200, 0xe800}, {&(0x7f0000011260)="22001f0000000000001f009c12080000000008007a090c0c001e0002000001000001010022001e000000007a090c0c001e000200000100000101012c0028000000000000281a040000000004090000000ce71e00000000010000010a00660069006c00650030002c00290000000000002900000000000000007a090c0c801e00000000010000010a00660069006c006500310000000000", 0x97, 0xf804}, {&(0x7f00000004c0)="4552ed010a548701525249505f313939314154484520524f434b20524944474520494e544552432b414e47452050524f544f434f4c2050524f564944455320535550504f525420464f5220504f5349582046494c452053595354454d2053454d414e54494353504c4541534520434f4e545d43542044495343205055424c495348455220464f522053504543494649434154494f4e20534f555243452e2020534545205055424c4953484552204944454e54494649455220494e205052494d41525920564f4c554d452044455343524950544f5220464f5220434f4e54414340206a80f77503494e464f524d4154494f4e2e000000000000000000000000000000000000009613804f537b6dae272540d62919a741bb3068030eb9aaf24e2c553d8cbf396a66332caebe2d45878ccc7a8da845b235c98bf0ae61586f2b", 0x13d, 0x10000}, {&(0x7f0000011480)='syzkallers\x00'/32, 0x20, 0x11000}, {&(0x7f00000114a0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x14000}], 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB="696f636861727365743d6575632d636b3d72656c53ea61786564f02c6d61703d61636f726e2c6e6f6a6f6c6965740000000000000000001aa0f463e1adbd84a37b43f324bb410d55a379e3eb011cb96680920b093efd06b5431eca1a"], 0x1) mount(0x0, &(0x7f0000000140)='./file0\x00', &(0x7f0000000000)='binder\x00', 0x0, 0x0) r0 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r1 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB="14000000", @ANYRES8=r0, @ANYBLOB='\x00'], 0x14}, 0x1, 0x0, 0x0, 0x40841}, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000400)=ANY=[@ANYRES32=r0, @ANYRES8=r0]) sendmsg$NL80211_CMD_TDLS_MGMT(r1, &(0x7f0000000640)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000600)={&(0x7f0000000480)=ANY=[@ANYBLOB="06000000", @ANYRES16=r0, @ANYBLOB="00042abd7000fcdbdf255200000008000300", @ANYRES32=0x0, @ANYBLOB="050089005b0000000a000600ffffffffffff0000"], 0x30}, 0x1, 0x0, 0x0, 0x4000080}, 0x4001) r2 = openat(0xffffffffffffff9c, &(0x7f0000004280)='./file0\x00', 0x0, 0x0) getdents64(r2, &(0x7f0000000080)=""/253, 0xfd) r3 = creat(&(0x7f0000000040)='./file0\x00', 0x0) r4 = openat$procfs(0xffffffffffffff9c, &(0x7f00000007c0)='/proc/partitions\x00', 0x0, 0x0) ioctl$KDSETMODE(r3, 0x4b3a, 0x0) r5 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r5, 0x8933, &(0x7f0000000040)={'veth1_vlan\x00', 0x0}) r7 = openat$mice(0xffffffffffffff9c, &(0x7f0000000680), 0x202) execveat(r7, &(0x7f0000000800)='./file0\x00', &(0x7f0000001180)=[&(0x7f0000000880)='overlay\x00', &(0x7f0000000f40)='binder\x00', &(0x7f0000000f80)='binder\x00', &(0x7f0000000fc0)='nl80211\x00', &(0x7f0000001000)='overlay\x00', &(0x7f0000001040)='.\\#+!(\x00', &(0x7f0000001080)='binder\x00', &(0x7f00000010c0)='\x1a-\x00', &(0x7f0000001100)='iso9660\x00', &(0x7f0000001140)='m\x00'], &(0x7f0000001300)=[&(0x7f0000001200)='/proc/partitions\x00', &(0x7f0000001240)='nl80211\x00', &(0x7f0000001280)='nl80211\x00', &(0x7f00000012c0)='veth1_vlan\x00'], 0x400) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)=@ipv4_newaddr={0x28, 0x14, 0x1, 0x2, 0x0, {0x2, 0x18, 0x0, 0x0, r6}, [@IFA_LOCAL={0x8, 0x2, @remote}, @IFA_BROADCAST={0x8, 0x4, @local}]}, 0x28}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f0000000e00)=@delqdisc={0x108, 0x25, 0x8, 0x70bd3c, 0x25dfdbfb, {0x0, 0x0, 0x0, r6, {0x2, 0xc}, {0x3, 0x7}, {0x1, 0x7}}, [@TCA_RATE={0x6, 0x5, {0x7}}, @TCA_STAB={0x4}, @TCA_STAB={0xd8, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x6, 0x6, 0xed, 0x40, 0x1, 0x6, 0x81}}, {0x4}}, {{0x1c, 0x1, {0x2, 0x0, 0x7f, 0x1, 0x2, 0xfffff47b, 0x401, 0x4}}, {0xc, 0x2, [0xa3e6, 0x9, 0x80, 0x1116]}}, {{0x1c, 0x1, {0x7a, 0x5c, 0x1baf, 0x7fffffff, 0x0, 0xea3c, 0x1, 0x5}}, {0xe, 0x2, [0x8000, 0x8, 0x1, 0x1, 0xf413]}}, {{0x1c, 0x1, {0x1, 0x4, 0x36, 0x549, 0x2, 0x8, 0x1, 0x6}}, {0x10, 0x2, [0x1000, 0x991, 0x2, 0xa1, 0x50d, 0x55]}}, {{0x1c, 0x1, {0x28, 0x0, 0x3ff, 0x77c33cda, 0x2, 0x7, 0x8, 0xa}}, {0x18, 0x2, [0xffff, 0x3, 0x3, 0x5, 0x1, 0x800, 0x81, 0x9, 0xd22b, 0x3]}}]}]}, 0x108}, 0x1, 0x0, 0x0, 0x4000000}, 0x41) sendmsg$nl_route_sched(r4, &(0x7f0000000780)={&(0x7f00000006c0)={0x10, 0x0, 0x0, 0x20000000}, 0xc, &(0x7f0000000740)={&(0x7f0000000700)=ANY=[@ANYBLOB="240000002a00100029bd7000fddbdf2500000000", @ANYRES32=r6, @ANYBLOB='\x00'/12], 0x24}, 0x1, 0x0, 0x0, 0x20000000}, 0x4) syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5f800, 0xe, &(0x7f0000000200)=[{&(0x7f0000010b00)="ff43443030310100"/32, 0x20, 0x4}, {&(0x7f0000000180)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x459}, {&(0x7f0000011120)="22001e0000000000001e00080000000008007a090c0c001e0002000001000001010022001e0000000000001e00080000000008007a090c0c001e000200000100000101013400210000000000002164000000000000647a090c0c001e00000000010000011200660069006c0065002e0063006f006c0064002c001f0000000000001f00080000000008007a090c0c001e00020000010000010a00660069006c00650030002c0022000000000000220a0000000000000a7a090c0c001e00000000010000010a00660069006c00650031002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c00650032002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c0065003300"/320, 0x140, 0x7ff}, {&(0x7f0000010000)="01434430303101004c494e55582020202020202020202020202020202020202020202020202020204344524f4d2020202020202020202020202020202020202020202020202020200000000000000000bf000000000000bf000000000000000000000000000000000000000000000000000000000000000001000001010000010008080018000000000000181400000000000000000000160000000022001c0000000000001c00080000000008007a090c0c001e00020000010000010100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202073797a6b616c6c65722020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202047454e49534f494d4147452049534f20393636302f4846532046494c4553595354454d2043524541544f5220284329203139393320452e594f554e4744414c452028432920313939372d32303036204a2e50454152534f4e2f4a2e534348494c4c494e472028432920323030362d32303037204344524b4954205445414d202066696c6533202020202020202020202020202020202020202020202020202020202020202066696c6531202020202020202020202020202020202020202020202020202020202020202066696c6532202020202020202020202020202020202020202020202020202020202020202032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8000}, {&(0x7f0000010580)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d002000200020002000200020002000200020002000200000000000000000bf000000000000bf252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c18000000000000000000001a0000000022001e0000000000001e00080000000008007a090c0c001e00020000010000010100002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000730079007a006b0061006c006c006500720020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000470045004e00490053004f0049004d004100470045002000490053004f00200039003600360030005f004800460053002000460049004c004500530059005300540045004d002000430052004500410054004f005200200028004300290020003100390039003300200045002e0059004f0055004e004700440041004c004500660069006c0065003300200020002000200020002000200020002000200020002000200000660069006c0065003100200020002000200020002000200020002000200020002000200000660069006c0065003200200020002000200020002000200020002000200020002000200032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8800}, {&(0x7f0000010b20)="01001c0000000100000005001d000000010046494c4530000000000000000000", 0x20, 0xa000}, {&(0x7f0000010b40)="01000000001c0001000005000000001d000146494c4530000000000000000000", 0x20, 0xb000}, {&(0x7f00000008c0)="01001e005100010000000069006c0065003000000000e6f04c670b2ba013c1e58303e9e17c85a1ac3999aeea37ed1802774ad402ef3b322d490d2470199200eed331bc5b5aa0bd19339550bcb44dd1d2a89c65d4c5fcefbca7927a9f39f2c1d9f1d82e8162c58b0e38221926369843011268335dde975a91894a17878d4ab9f0470e30095149ab2d874f949c2cefe90edf7b68ff425fcf2c2fbf6d9300e932e83f7e7a8f881a521e714d1dd64ca863c71a27065bb0b038bb70481af46c32578cf59387e9a846b3811ffae03cbc254090234121096e1f4cbba308b9d536f51bb5426e2b0dc8ebefbf235867e4b8c6f5af107183d5925ff20ab394bfaf366a575671913e9934eae9d7", 0x108, 0xc000}, {&(0x7f0000000a00)="88001c0000000000001c00080000000008007a090c0c001e0002000001000001010053500701bace709052050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a0b0c0c001e007a090c0c0035007a090c0c001e0043451c01200000fd000000200000000000000000ed000000000000ed66001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008c00210000000000002164000000000000647a090c0c001e00000000010000010a46494c452e434f4c3b310041410e0254455854756e6978000052520501894e4d0e010066696c652e636f6c64505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000074001d0000000000001d00080000000018007a090c0c001e00020000010000010546494c453052520501894e4d0a010066696c6530505824016d4100000000416d020e0000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860022000000000000220a0000000000000a7a090c0c001e00000000010000010846494c45312e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6531505824416d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008600230000000000002328230000000023287a090c0c001e00000000010000010846494c45322e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6532505824016d8100000000816d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c11bed46e3bd276471e00008600230000000000002328230000000023287a090c1c001e00000000010000010846494c45332e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6533505824016d8100000000816d02000000000000020000000000000000000000000000000554461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000b29e0dab9c906da7ffff7b0bfe3b41214f6c362ba753e16fa4f697365db2095524da3eb3a93c3e212e511de9db25e3ce34c3ec3f12e04386ed76095459835832513cd6d693cf7e5a95639f7dffee256394d2f029c51e1cd234f600d4", 0x3dc, 0xe000}, {&(0x7f0000010f20)="66001d0000000000001d00080000000008007a090c0c001e000200000100000101005252050181505824016d4100000000416d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000066001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860028000000000000281a0400000000041a7a090c0c001e00000000010000010846494c45302e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6530505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000aa00290000000000002900000000000000007a090c0c001e00000000010000010846494c45312e3b3100525205018d4e4d0a010066696c6531505824016da100000000a16d010000000000000100000000000000000000000000000000534c32010008000003746d70001673797a2d696d61676567656e32383037373134373932000566696c6530000566696c653054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000000000000", 0x200, 0xe800}, {&(0x7f0000011260)="22001f0000000000001f009c12080000000008007a090c0c001e0002000001000001010022001e000000007a090c0c001e000200000100000101012c0028000000000000281a040000000004090000000ce71e00000000010000010a00660069006c00650030002c00290000000000002900000000000000007a090c0c801e00000000010000010a00660069006c006500310000000000", 0x97, 0xf804}, {&(0x7f00000004c0)="4552ed010a548701525249505f313939314154484520524f434b20524944474520494e544552432b414e47452050524f544f434f4c2050524f564944455320535550504f525420464f5220504f5349582046494c452053595354454d2053454d414e54494353504c4541534520434f4e545d43542044495343205055424c495348455220464f522053504543494649434154494f4e20534f555243452e2020534545205055424c4953484552204944454e54494649455220494e205052494d41525920564f4c554d452044455343524950544f5220464f5220434f4e54414340206a80f77503494e464f524d4154494f4e2e000000000000000000000000000000000000009613804f537b6dae272540d62919a741bb3068030eb9aaf24e2c553d8cbf396a66332caebe2d45878ccc7a8da845b235c98bf0ae61586f2b", 0x13d, 0x10000}, {&(0x7f0000011480)='syzkallers\x00'/32, 0x20, 0x11000}, {&(0x7f00000114a0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x14000}], 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB="696f636861727365743d6575632d636b3d72656c53ea61786564f02c6d61703d61636f726e2c6e6f6a6f6c6965740000000000000000001aa0f463e1adbd84a37b43f324bb410d55a379e3eb011cb96680920b093efd06b5431eca1a"], 0x1) (async) mount(0x0, &(0x7f0000000140)='./file0\x00', &(0x7f0000000000)='binder\x00', 0x0, 0x0) (async) syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) (async) socket$nl_generic(0x10, 0x3, 0x10) (async) sendmsg$NL80211_CMD_GET_REG(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB="14000000", @ANYRES8=r0, @ANYBLOB='\x00'], 0x14}, 0x1, 0x0, 0x0, 0x40841}, 0x0) (async) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000400)=ANY=[@ANYRES32=r0, @ANYRES8=r0]) (async) sendmsg$NL80211_CMD_TDLS_MGMT(r1, &(0x7f0000000640)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000600)={&(0x7f0000000480)=ANY=[@ANYBLOB="06000000", @ANYRES16=r0, @ANYBLOB="00042abd7000fcdbdf255200000008000300", @ANYRES32=0x0, @ANYBLOB="050089005b0000000a000600ffffffffffff0000"], 0x30}, 0x1, 0x0, 0x0, 0x4000080}, 0x4001) (async) openat(0xffffffffffffff9c, &(0x7f0000004280)='./file0\x00', 0x0, 0x0) (async) getdents64(r2, &(0x7f0000000080)=""/253, 0xfd) (async) creat(&(0x7f0000000040)='./file0\x00', 0x0) (async) openat$procfs(0xffffffffffffff9c, &(0x7f00000007c0)='/proc/partitions\x00', 0x0, 0x0) (async) ioctl$KDSETMODE(r3, 0x4b3a, 0x0) (async) socket$inet6_icmp_raw(0xa, 0x3, 0x3a) (async) ioctl$sock_SIOCGIFINDEX(r5, 0x8933, &(0x7f0000000040)={'veth1_vlan\x00'}) (async) openat$mice(0xffffffffffffff9c, &(0x7f0000000680), 0x202) (async) execveat(r7, &(0x7f0000000800)='./file0\x00', &(0x7f0000001180)=[&(0x7f0000000880)='overlay\x00', &(0x7f0000000f40)='binder\x00', &(0x7f0000000f80)='binder\x00', &(0x7f0000000fc0)='nl80211\x00', &(0x7f0000001000)='overlay\x00', &(0x7f0000001040)='.\\#+!(\x00', &(0x7f0000001080)='binder\x00', &(0x7f00000010c0)='\x1a-\x00', &(0x7f0000001100)='iso9660\x00', &(0x7f0000001140)='m\x00'], &(0x7f0000001300)=[&(0x7f0000001200)='/proc/partitions\x00', &(0x7f0000001240)='nl80211\x00', &(0x7f0000001280)='nl80211\x00', &(0x7f00000012c0)='veth1_vlan\x00'], 0x400) (async) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)=@ipv4_newaddr={0x28, 0x14, 0x1, 0x2, 0x0, {0x2, 0x18, 0x0, 0x0, r6}, [@IFA_LOCAL={0x8, 0x2, @remote}, @IFA_BROADCAST={0x8, 0x4, @local}]}, 0x28}}, 0x0) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f0000000e00)=@delqdisc={0x108, 0x25, 0x8, 0x70bd3c, 0x25dfdbfb, {0x0, 0x0, 0x0, r6, {0x2, 0xc}, {0x3, 0x7}, {0x1, 0x7}}, [@TCA_RATE={0x6, 0x5, {0x7}}, @TCA_STAB={0x4}, @TCA_STAB={0xd8, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x6, 0x6, 0xed, 0x40, 0x1, 0x6, 0x81}}, {0x4}}, {{0x1c, 0x1, {0x2, 0x0, 0x7f, 0x1, 0x2, 0xfffff47b, 0x401, 0x4}}, {0xc, 0x2, [0xa3e6, 0x9, 0x80, 0x1116]}}, {{0x1c, 0x1, {0x7a, 0x5c, 0x1baf, 0x7fffffff, 0x0, 0xea3c, 0x1, 0x5}}, {0xe, 0x2, [0x8000, 0x8, 0x1, 0x1, 0xf413]}}, {{0x1c, 0x1, {0x1, 0x4, 0x36, 0x549, 0x2, 0x8, 0x1, 0x6}}, {0x10, 0x2, [0x1000, 0x991, 0x2, 0xa1, 0x50d, 0x55]}}, {{0x1c, 0x1, {0x28, 0x0, 0x3ff, 0x77c33cda, 0x2, 0x7, 0x8, 0xa}}, {0x18, 0x2, [0xffff, 0x3, 0x3, 0x5, 0x1, 0x800, 0x81, 0x9, 0xd22b, 0x3]}}]}]}, 0x108}, 0x1, 0x0, 0x0, 0x4000000}, 0x41) (async) sendmsg$nl_route_sched(r4, &(0x7f0000000780)={&(0x7f00000006c0)={0x10, 0x0, 0x0, 0x20000000}, 0xc, &(0x7f0000000740)={&(0x7f0000000700)=ANY=[@ANYBLOB="240000002a00100029bd7000fddbdf2500000000", @ANYRES32=r6, @ANYBLOB='\x00'/12], 0x24}, 0x1, 0x0, 0x0, 0x20000000}, 0x4) (async) [ 950.254105] overlayfs: unrecognized mount option "" or missing value [ 950.261225] overlayfs: unrecognized mount option "" or missing value [ 950.354495] overlayfs: unrecognized mount option "" or missing value [ 950.418517] overlayfs: unrecognized mount option "" or missing value 00:26:13 executing program 3: syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5f800, 0xe, &(0x7f0000000200)=[{&(0x7f0000010b00)="ff43443030310100"/32, 0x20, 0x4}, {&(0x7f0000000180)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x459}, {&(0x7f0000011120)="22001e0000000000001e00080000000008007a090c0c001e0002000001000001010022001e0000000000001e00080000000008007a090c0c001e000200000100000101013400210000000000002164000000000000647a090c0c001e00000000010000011200660069006c0065002e0063006f006c0064002c001f0000000000001f00080000000008007a090c0c001e00020000010000010a00660069006c00650030002c0022000000000000220a0000000000000a7a090c0c001e00000000010000010a00660069006c00650031002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c00650032002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c0065003300"/320, 0x140, 0x7ff}, {&(0x7f0000010000)="01434430303101004c494e55582020202020202020202020202020202020202020202020202020204344524f4d2020202020202020202020202020202020202020202020202020200000000000000000bf000000000000bf000000000000000000000000000000000000000000000000000000000000000001000001010000010008080018000000000000181400000000000000000000160000000022001c0000000000001c00080000000008007a090c0c001e00020000010000010100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202073797a6b616c6c65722020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202047454e49534f494d4147452049534f20393636302f4846532046494c4553595354454d2043524541544f5220284329203139393320452e594f554e4744414c452028432920313939372d32303036204a2e50454152534f4e2f4a2e534348494c4c494e472028432920323030362d32303037204344524b4954205445414d202066696c6533202020202020202020202020202020202020202020202020202020202020202066696c6531202020202020202020202020202020202020202020202020202020202020202066696c6532202020202020202020202020202020202020202020202020202020202020202032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8000}, {&(0x7f0000010580)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d002000200020002000200020002000200020002000200000000000000000bf000000000000bf252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c18000000000000000000001a0000000022001e0000000000001e00080000000008007a090c0c001e00020000010000010100002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000730079007a006b0061006c006c006500720020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000470045004e00490053004f0049004d004100470045002000490053004f00200039003600360030005f004800460053002000460049004c004500530059005300540045004d002000430052004500410054004f005200200028004300290020003100390039003300200045002e0059004f0055004e004700440041004c004500660069006c0065003300200020002000200020002000200020002000200020002000200000660069006c0065003100200020002000200020002000200020002000200020002000200000660069006c0065003200200020002000200020002000200020002000200020002000200032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8800}, {&(0x7f0000010b20)="01001c0000000100000005001d000000010046494c4530000000000000000000", 0x20, 0xa000}, {&(0x7f0000010b40)="01000000001c0001000005000000001d000146494c4530000000000000000000", 0x20, 0xb000}, {&(0x7f00000008c0)="01001e005100010000000069006c0065003000000000e6f04c670b2ba013c1e58303e9e17c85a1ac3999aeea37ed1802774ad402ef3b322d490d2470199200eed331bc5b5aa0bd19339550bcb44dd1d2a89c65d4c5fcefbca7927a9f39f2c1d9f1d82e8162c58b0e38221926369843011268335dde975a91894a17878d4ab9f0470e30095149ab2d874f949c2cefe90edf7b68ff425fcf2c2fbf6d9300e932e83f7e7a8f881a521e714d1dd64ca863c71a27065bb0b038bb70481af46c32578cf59387e9a846b3811ffae03cbc254090234121096e1f4cbba308b9d536f51bb5426e2b0dc8ebefbf235867e4b8c6f5af107183d5925ff20ab394bfaf366a575671913e9934eae9d7", 0x108, 0xc000}, {&(0x7f0000000a00)="88001c0000000000001c00080000000008007a090c0c001e0002000001000001010053500701bace709052050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a0b0c0c001e007a090c0c0035007a090c0c001e0043451c01200000fd000000200000000000000000ed000000000000ed66001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008c00210000000000002164000000000000647a090c0c001e00000000010000010a46494c452e434f4c3b310041410e0254455854756e6978000052520501894e4d0e010066696c652e636f6c64505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000074001d0000000000001d00080000000018007a090c0c001e00020000010000010546494c453052520501894e4d0a010066696c6530505824016d4100000000416d020e0000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860022000000000000220a0000000000000a7a090c0c001e00000000010000010846494c45312e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6531505824416d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008600230000000000002328230000000023287a090c0c001e00000000010000010846494c45322e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6532505824016d8100000000816d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c11bed46e3bd276471e00008600230000000000002328230000000023287a090c1c001e00000000010000010846494c45332e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6533505824016d8100000000816d02000000000000020000000000000000000000000000000554461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000b29e0dab9c906da7ffff7b0bfe3b41214f6c362ba753e16fa4f697365db2095524da3eb3a93c3e212e511de9db25e3ce34c3ec3f12e04386ed76095459835832513cd6d693cf7e5a95639f7dffee256394d2f029c51e1cd234f600d4", 0x3dc, 0xe000}, {&(0x7f0000010f20)="66001d0000000000001d00080000000008007a090c0c001e000200000100000101005252050181505824016d4100000000416d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000066001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860028000000000000281a0400000000041a7a090c0c001e00000000010000010846494c45302e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6530505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000aa00290000000000002900000000000000007a090c0c001e00000000010000010846494c45312e3b3100525205018d4e4d0a010066696c6531505824016da100000000a16d010000000000000100000000000000000000000000000000534c32010008000003746d70001673797a2d696d61676567656e32383037373134373932000566696c6530000566696c653054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000000000000", 0x200, 0xe800}, {&(0x7f0000011260)="22001f0000000000001f009c12080000000008007a090c0c001e0002000001000001010022001e000000007a090c0c001e000200000100000101012c0028000000000000281a040000000004090000000ce71e00000000010000010a00660069006c00650030002c00290000000000002900000000000000007a090c0c801e00000000010000010a00660069006c006500310000000000", 0x97, 0xf804}, {&(0x7f00000004c0)="4552ed010a548701525249505f313939314154484520524f434b20524944474520494e544552432b414e47452050524f544f434f4c2050524f564944455320535550504f525420464f5220504f5349582046494c452053595354454d2053454d414e54494353504c4541534520434f4e545d43542044495343205055424c495348455220464f522053504543494649434154494f4e20534f555243452e2020534545205055424c4953484552204944454e54494649455220494e205052494d41525920564f4c554d452044455343524950544f5220464f5220434f4e54414340206a80f77503494e464f524d4154494f4e2e000000000000000000000000000000000000009613804f537b6dae272540d62919a741bb3068030eb9aaf24e2c553d8cbf396a66332caebe2d45878ccc7a8da845b235c98bf0ae61586f2b", 0x13d, 0x10000}, {&(0x7f0000011480)='syzkallers\x00'/32, 0x20, 0x11000}, {&(0x7f00000114a0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x14000}], 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB="696f636861727365743d6575632d636b3d72656c53ea61786564f02c6d61703d61636f726e2c6e6f6a6f6c6965740000000000000000001aa0f463e1adbd84a37b43f324bb410d55a379e3eb011cb96680920b093efd06b5431eca1a"], 0x1) mount(0x0, &(0x7f0000000140)='./file0\x00', &(0x7f0000000000)='binder\x00', 0x0, 0x0) r0 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r1 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB="14000000", @ANYRES8=r0, @ANYBLOB='\x00'], 0x14}, 0x1, 0x0, 0x0, 0x40841}, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000400)=ANY=[@ANYRES32=r0, @ANYRES8=r0]) sendmsg$NL80211_CMD_TDLS_MGMT(r1, &(0x7f0000000640)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000600)={&(0x7f0000000480)=ANY=[@ANYBLOB="06000000", @ANYRES16=r0, @ANYBLOB="00042abd7000fcdbdf255200000008000300", @ANYRES32=0x0, @ANYBLOB="050089005b0000000a000600ffffffffffff0000"], 0x30}, 0x1, 0x0, 0x0, 0x4000080}, 0x4001) r2 = openat(0xffffffffffffff9c, &(0x7f0000004280)='./file0\x00', 0x0, 0x0) getdents64(r2, &(0x7f0000000080)=""/253, 0xfd) r3 = creat(&(0x7f0000000040)='./file0\x00', 0x0) openat$procfs(0xffffffffffffff9c, &(0x7f00000007c0)='/proc/partitions\x00', 0x0, 0x0) ioctl$KDSETMODE(r3, 0x4b3a, 0x0) r4 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r4, 0x8933, &(0x7f0000000040)={'veth1_vlan\x00', 0x0}) r6 = openat$mice(0xffffffffffffff9c, &(0x7f0000000680), 0x202) execveat(r6, &(0x7f0000000800)='./file0\x00', &(0x7f0000001180)=[&(0x7f0000000880)='overlay\x00', &(0x7f0000000f40)='binder\x00', &(0x7f0000000f80)='binder\x00', &(0x7f0000000fc0)='nl80211\x00', &(0x7f0000001000)='overlay\x00', &(0x7f0000001040)='.\\#+!(\x00', &(0x7f0000001080)='binder\x00', &(0x7f00000010c0)='\x1a-\x00', &(0x7f0000001100)='iso9660\x00', &(0x7f0000001140)='m\x00'], &(0x7f0000001300)=[&(0x7f0000001200)='/proc/partitions\x00', &(0x7f0000001240)='nl80211\x00', &(0x7f0000001280)='nl80211\x00', &(0x7f00000012c0)='veth1_vlan\x00'], 0x400) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)=@ipv4_newaddr={0x28, 0x14, 0x1, 0x2, 0x0, {0x2, 0x18, 0x0, 0x0, r5}, [@IFA_LOCAL={0x8, 0x2, @remote}, @IFA_BROADCAST={0x8, 0x4, @local}]}, 0x28}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f0000000e00)=@delqdisc={0x108, 0x25, 0x8, 0x70bd3c, 0x25dfdbfb, {0x0, 0x0, 0x0, r5, {0x2, 0xc}, {0x3, 0x7}, {0x1, 0x7}}, [@TCA_RATE={0x6, 0x5, {0x7}}, @TCA_STAB={0x4}, @TCA_STAB={0xd8, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x6, 0x6, 0xed, 0x40, 0x1, 0x6, 0x81}}, {0x4}}, {{0x1c, 0x1, {0x2, 0x0, 0x7f, 0x1, 0x2, 0xfffff47b, 0x401, 0x4}}, {0xc, 0x2, [0xa3e6, 0x9, 0x80, 0x1116]}}, {{0x1c, 0x1, {0x7a, 0x5c, 0x1baf, 0x7fffffff, 0x0, 0xea3c, 0x1, 0x5}}, {0xe, 0x2, [0x8000, 0x8, 0x1, 0x1, 0xf413]}}, {{0x1c, 0x1, {0x1, 0x4, 0x36, 0x549, 0x2, 0x8, 0x1, 0x6}}, {0x10, 0x2, [0x1000, 0x991, 0x2, 0xa1, 0x50d, 0x55]}}, {{0x1c, 0x1, {0x28, 0x0, 0x3ff, 0x77c33cda, 0x2, 0x7, 0x8, 0xa}}, {0x18, 0x2, [0xffff, 0x3, 0x3, 0x5, 0x1, 0x800, 0x81, 0x9, 0xd22b, 0x3]}}]}]}, 0x108}, 0x1, 0x0, 0x0, 0x4000000}, 0x41) 00:26:13 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x3801000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:13 executing program 2: r0 = perf_event_open(&(0x7f000025c000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000341000/0x2000)=nil, 0x2000, 0x0, 0x11, r1, 0x0) r2 = gettid() process_vm_writev(r2, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) r3 = perf_event_open(&(0x7f0000000040)={0x2, 0x80, 0x2, 0x4, 0x40, 0x1f, 0x0, 0x1, 0x18000, 0x2, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x10000, 0x1, @perf_config_ext={0x10000, 0xffffffff}, 0x10, 0x2, 0xffffffff, 0x1, 0x4, 0x9, 0x8, 0x0, 0x1d40, 0x0, 0x81}, r2, 0xb, 0xffffffffffffffff, 0x2) ioctl$PERF_EVENT_IOC_SET_OUTPUT(r0, 0x2405, r1) r4 = fcntl$dupfd(r0, 0x406, r3) ioctl$PERF_EVENT_IOC_PERIOD(r4, 0x40082404, &(0x7f0000000140)=0x1) mmap(&(0x7f0000395000/0x2000)=nil, 0x2000, 0x0, 0x11, r0, 0x0) ioctl$PERF_EVENT_IOC_DISABLE(0xffffffffffffffff, 0x2401, 0x0) r5 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x0, 0x12, r5, 0x0) 00:26:13 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r4 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r4, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) ioctl$KVM_SET_SREGS(r4, 0x4138ae84, &(0x7f0000000140)={{0x1, 0x2000, 0xc, 0xe7, 0x86, 0x4, 0x7, 0x5d, 0x1f, 0x3, 0x7f, 0x20}, {0x4000, 0xd000, 0xa, 0xd0, 0x81, 0x5, 0x1, 0x4, 0x4, 0x1, 0x8, 0x3}, {0x10000, 0x6000, 0x9, 0x1f, 0x20, 0x9, 0x97, 0xb7, 0x7, 0x2, 0x7f, 0x7}, {0x3000, 0x0, 0xd, 0x3f, 0x9a, 0x81, 0x0, 0x2, 0xac, 0x76, 0x1, 0x3f}, {0x4, 0x3000, 0x4, 0x3, 0xb4, 0x4, 0x1, 0x9, 0x7f, 0x6, 0xda, 0x1}, {0x10000, 0x3000, 0x0, 0x9, 0x1f, 0x3f, 0x4, 0x9, 0x0, 0x3f, 0x34, 0xb1}, {0x4, 0x4000, 0x0, 0x1, 0xb1, 0x80, 0xa4, 0x7f, 0x20, 0x3, 0x5, 0xac}, {0x100000, 0x5000, 0x0, 0x1, 0x3, 0x1, 0x0, 0x3, 0x4, 0x80, 0x80, 0x4}, {0xd000, 0xfff}, {0x1000, 0x4}, 0x40022, 0x0, 0x10000, 0x220, 0x7, 0x0, 0x10000, [0x7, 0x8000000000000000, 0x3, 0xf00]}) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)=ANY=[@ANYBLOB="7f454c46000000000000000000000000000000000000000000000000000000004000000000003a3d55e20c2c542900000000000000003800"/120], 0x78) 00:26:13 executing program 4: r0 = openat$vim2m(0xffffffffffffff9c, &(0x7f0000000140), 0x2, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0x3}, r1, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r2 = socket$inet_sctp(0x2, 0x5, 0x84) sendto$inet(r2, &(0x7f0000000140)='^', 0x34000, 0x0, &(0x7f0000004ff0)={0x2, 0x0, @rand_addr=0xfffffffffffffffe}, 0x10) ioctl$sock_SIOCGIFVLAN_ADD_VLAN_CMD(r2, 0x8982, &(0x7f0000000040)={0x0, 'team0\x00', {0x700}}) r3 = socket$inet6_tcp(0xa, 0x1, 0x0) setsockopt$IP6T_SO_SET_REPLACE(r3, 0x29, 0x40, &(0x7f00000001c0)=@raw={'raw\x00', 0x3c1, 0x3, 0x4c8, 0x2e0, 0x9403, 0x0, 0x0, 0x2c0, 0x3f8, 0x3d8, 0x3d8, 0x3f8, 0x3d8, 0x3, 0x0, {[{{@uncond, 0x0, 0x298, 0x2e0, 0x0, {}, [@common=@inet=@recent0={{0xf8}, {0x0, 0x0, 0x1, 0x0, 'syz0\x00'}}, @common=@inet=@recent0={{0xf8}, {0x0, 0x2, 0x1, 0x0, 'syz0\x00'}}]}, @common=@inet=@TEE={0x48, 'TEE\x00', 0x1, {@ipv4=@loopback, 'virt_wifi0\x00'}}}, {{@uncond, 0x0, 0xd0, 0x118, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@CT0={0x48, 'CT\x00', 0x0, {0x0, 0x0, 0x0, 0x0, 'syz1\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x528) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) setsockopt$IP6T_SO_SET_REPLACE(r4, 0x29, 0x40, &(0x7f00000001c0)=@raw={'raw\x00', 0x3c1, 0x3, 0x4c8, 0x2e0, 0x9403, 0x0, 0x0, 0x2c0, 0x3f8, 0x3d8, 0x3d8, 0x3f8, 0x3d8, 0x3, 0x0, {[{{@uncond, 0x0, 0x298, 0x2e0, 0x0, {}, [@common=@inet=@recent0={{0xf8}, {0x0, 0x0, 0x1, 0x0, 'syz0\x00'}}, @common=@inet=@recent0={{0xf8}, {0x0, 0x2, 0x1, 0x0, 'syz0\x00'}}]}, @common=@inet=@TEE={0x48, 'TEE\x00', 0x1, {@ipv4=@loopback, 'virt_wifi0\x00'}}}, {{@uncond, 0x0, 0xd0, 0x118, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@CT0={0x48, 'CT\x00', 0x0, {0x0, 0x0, 0x0, 0x0, 'syz1\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x528) r5 = accept4(r4, 0x0, 0x0, 0x0) ioctl$vim2m_VIDIOC_REQBUFS(r0, 0xc0145608, &(0x7f00000000c0)={0xffffffe0, 0x2, 0x2}) sendto$inet(r5, &(0x7f0000000180)="0af22e2283c90b2f1fb6cf5ec468282cdfb6666a33a76b536994d60a9fb6b4ef84342fa90fa4ac2f57de33e7f904edb88317bc64954d7f62266f059a58828349f4595fa268e43c495eabc0661acbea6556f8f082bc9e7d108200d7e5e8d777cb5f7af4fe040194a2fcc82abaee688254a1078fb93831f7e4dfb7f5fe2b904efe78c3511a522225d1bb05a5776bd7cbe1e5c868fe5ef8f929762b2a8f", 0x9c, 0x40, &(0x7f0000000080)={0x2, 0x4e21, @rand_addr=0x64010100}, 0x10) openat$vim2m(0xffffffffffffff9c, &(0x7f0000000840), 0x2, 0x0) ioctl$vim2m_VIDIOC_QBUF(r0, 0xc058560f, &(0x7f0000000880)=@multiplanar_userptr={0x0, 0x0, 0x4, 0x10000, 0x0, {0x77359400}, {0x0, 0x0, 0x0, 0x0, 0x0, 0x2, '#\x00@\x00'}, 0xfffffffe, 0x2, {&(0x7f0000000000)=[{0xffffffff, 0x0, {0x0}}, {0x0, 0x0, {0x0}}]}, 0x96000}) r6 = syz_open_dev$vcsn(&(0x7f0000000100), 0x5, 0x1) ioctl$vim2m_VIDIOC_REQBUFS(0xffffffffffffffff, 0xc0145608, &(0x7f0000000900)={0x8001, 0x1, 0x4}) sendto$inet6(r6, &(0x7f0000000780)="0f9f221bc02e219b1357dfbf932d97438172a7b971cd5e1f0d5c12cf9c01c1c7e5a708e23706a29f48fa604511d9a7d7ba5e51ae691848da4100f658494af2d5da897ac77ab2ab8ee06759cf34c2c0e02f30b691123d590c5c814b0ba2b4a0d13dcbf9ce11a39f661a2c94300ec0", 0x6e, 0x4000801, &(0x7f0000000800)={0xa, 0x4e24, 0xef, @private2, 0x101}, 0x1c) ioctl$AUTOFS_DEV_IOCTL_READY(r6, 0xc0189376, &(0x7f0000000980)=ANY=[@ANYBLOB="010000000100000018000000", @ANYRES32=r4, @ANYBLOB="00080000000000002e2f66696c65300088698ebd9829f64220b8849384ce1bfc770836"]) connect$inet6(r7, &(0x7f0000000940)={0xa, 0x4e22, 0xe6, @initdev={0xfe, 0x88, '\x00', 0x1, 0x0}, 0x1000}, 0x1c) 00:26:13 executing program 5: r0 = perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r1 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r1, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r3 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)={0x14, r2, 0x9}, 0x14}}, 0x0) ioctl$AUTOFS_DEV_IOCTL_PROTOSUBVER(r1, 0xc0189373, &(0x7f0000000000)={{0x1, 0x1, 0x18, r3}, './file0\x00'}) r4 = socket$inet_smc(0x2b, 0x1, 0x0) dup3(r0, r4, 0x0) 00:26:13 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x3f00000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) 00:26:13 executing program 2: r0 = perf_event_open(&(0x7f000025c000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) (async) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000341000/0x2000)=nil, 0x2000, 0x0, 0x11, r1, 0x0) (async, rerun: 64) r2 = gettid() (rerun: 64) process_vm_writev(r2, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) r3 = perf_event_open(&(0x7f0000000040)={0x2, 0x80, 0x2, 0x4, 0x40, 0x1f, 0x0, 0x1, 0x18000, 0x2, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x10000, 0x1, @perf_config_ext={0x10000, 0xffffffff}, 0x10, 0x2, 0xffffffff, 0x1, 0x4, 0x9, 0x8, 0x0, 0x1d40, 0x0, 0x81}, r2, 0xb, 0xffffffffffffffff, 0x2) ioctl$PERF_EVENT_IOC_SET_OUTPUT(r0, 0x2405, r1) (async, rerun: 32) r4 = fcntl$dupfd(r0, 0x406, r3) (rerun: 32) ioctl$PERF_EVENT_IOC_PERIOD(r4, 0x40082404, &(0x7f0000000140)=0x1) (async) mmap(&(0x7f0000395000/0x2000)=nil, 0x2000, 0x0, 0x11, r0, 0x0) (async) ioctl$PERF_EVENT_IOC_DISABLE(0xffffffffffffffff, 0x2401, 0x0) r5 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x0, 0x12, r5, 0x0) [ 950.728831] overlayfs: unrecognized mount option "" or missing value 00:26:13 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x4000000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) [ 950.803751] xt_CT: You must specify a L4 protocol and not use inversions on it 00:26:13 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r4 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r4, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) ioctl$KVM_SET_SREGS(r4, 0x4138ae84, &(0x7f0000000140)={{0x1, 0x2000, 0xc, 0xe7, 0x86, 0x4, 0x7, 0x5d, 0x1f, 0x3, 0x7f, 0x20}, {0x4000, 0xd000, 0xa, 0xd0, 0x81, 0x5, 0x1, 0x4, 0x4, 0x1, 0x8, 0x3}, {0x10000, 0x6000, 0x9, 0x1f, 0x20, 0x9, 0x97, 0xb7, 0x7, 0x2, 0x7f, 0x7}, {0x3000, 0x0, 0xd, 0x3f, 0x9a, 0x81, 0x0, 0x2, 0xac, 0x76, 0x1, 0x3f}, {0x4, 0x3000, 0x4, 0x3, 0xb4, 0x4, 0x1, 0x9, 0x7f, 0x6, 0xda, 0x1}, {0x10000, 0x3000, 0x0, 0x9, 0x1f, 0x3f, 0x4, 0x9, 0x0, 0x3f, 0x34, 0xb1}, {0x4, 0x4000, 0x0, 0x1, 0xb1, 0x80, 0xa4, 0x7f, 0x20, 0x3, 0x5, 0xac}, {0x100000, 0x5000, 0x0, 0x1, 0x3, 0x1, 0x0, 0x3, 0x4, 0x80, 0x80, 0x4}, {0xd000, 0xfff}, {0x1000, 0x4}, 0x40022, 0x0, 0x10000, 0x220, 0x7, 0x0, 0x10000, [0x7, 0x8000000000000000, 0x3, 0xf00]}) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)=ANY=[@ANYBLOB="7f454c46000000000000000000000000000000000000000000000000000000004000000000003a3d55e20c2c542900000000000000003800"/120], 0x78) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)) (async) pipe(&(0x7f00000000c0)) (async) syz_open_procfs(0xffffffffffffffff, 0x0) (async) ioctl$SG_IO(r4, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) (async) ioctl$KVM_SET_SREGS(r4, 0x4138ae84, &(0x7f0000000140)={{0x1, 0x2000, 0xc, 0xe7, 0x86, 0x4, 0x7, 0x5d, 0x1f, 0x3, 0x7f, 0x20}, {0x4000, 0xd000, 0xa, 0xd0, 0x81, 0x5, 0x1, 0x4, 0x4, 0x1, 0x8, 0x3}, {0x10000, 0x6000, 0x9, 0x1f, 0x20, 0x9, 0x97, 0xb7, 0x7, 0x2, 0x7f, 0x7}, {0x3000, 0x0, 0xd, 0x3f, 0x9a, 0x81, 0x0, 0x2, 0xac, 0x76, 0x1, 0x3f}, {0x4, 0x3000, 0x4, 0x3, 0xb4, 0x4, 0x1, 0x9, 0x7f, 0x6, 0xda, 0x1}, {0x10000, 0x3000, 0x0, 0x9, 0x1f, 0x3f, 0x4, 0x9, 0x0, 0x3f, 0x34, 0xb1}, {0x4, 0x4000, 0x0, 0x1, 0xb1, 0x80, 0xa4, 0x7f, 0x20, 0x3, 0x5, 0xac}, {0x100000, 0x5000, 0x0, 0x1, 0x3, 0x1, 0x0, 0x3, 0x4, 0x80, 0x80, 0x4}, {0xd000, 0xfff}, {0x1000, 0x4}, 0x40022, 0x0, 0x10000, 0x220, 0x7, 0x0, 0x10000, [0x7, 0x8000000000000000, 0x3, 0xf00]}) (async) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) (async) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) (async) write$binfmt_misc(r3, 0x0, 0x4) (async) write$binfmt_elf64(r1, &(0x7f0000000ac0)=ANY=[@ANYBLOB="7f454c46000000000000000000000000000000000000000000000000000000004000000000003a3d55e20c2c542900000000000000003800"/120], 0x78) (async) 00:26:13 executing program 3: syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5f800, 0xe, &(0x7f0000000200)=[{&(0x7f0000010b00)="ff43443030310100"/32, 0x20, 0x4}, {&(0x7f0000000180)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x459}, {&(0x7f0000011120)="22001e0000000000001e00080000000008007a090c0c001e0002000001000001010022001e0000000000001e00080000000008007a090c0c001e000200000100000101013400210000000000002164000000000000647a090c0c001e00000000010000011200660069006c0065002e0063006f006c0064002c001f0000000000001f00080000000008007a090c0c001e00020000010000010a00660069006c00650030002c0022000000000000220a0000000000000a7a090c0c001e00000000010000010a00660069006c00650031002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c00650032002c00230000000000002328230000000023287a090c0c001e00000000010000010a00660069006c0065003300"/320, 0x140, 0x7ff}, {&(0x7f0000010000)="01434430303101004c494e55582020202020202020202020202020202020202020202020202020204344524f4d2020202020202020202020202020202020202020202020202020200000000000000000bf000000000000bf000000000000000000000000000000000000000000000000000000000000000001000001010000010008080018000000000000181400000000000000000000160000000022001c0000000000001c00080000000008007a090c0c001e00020000010000010100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202073797a6b616c6c65722020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202047454e49534f494d4147452049534f20393636302f4846532046494c4553595354454d2043524541544f5220284329203139393320452e594f554e4744414c452028432920313939372d32303036204a2e50454152534f4e2f4a2e534348494c4c494e472028432920323030362d32303037204344524b4954205445414d202066696c6533202020202020202020202020202020202020202020202020202020202020202066696c6531202020202020202020202020202020202020202020202020202020202020202066696c6532202020202020202020202020202020202020202020202020202020202020202032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8000}, {&(0x7f0000010580)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d002000200020002000200020002000200020002000200000000000000000bf000000000000bf252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c18000000000000000000001a0000000022001e0000000000001e00080000000008007a090c0c001e00020000010000010100002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000730079007a006b0061006c006c006500720020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000470045004e00490053004f0049004d004100470045002000490053004f00200039003600360030005f004800460053002000460049004c004500530059005300540045004d002000430052004500410054004f005200200028004300290020003100390039003300200045002e0059004f0055004e004700440041004c004500660069006c0065003300200020002000200020002000200020002000200020002000200000660069006c0065003100200020002000200020002000200020002000200020002000200000660069006c0065003200200020002000200020002000200020002000200020002000200032303232303931323132303035383030003230323230393132313230303538303000303030303030303030303030303030300032303232303931323132303035383030000100202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202000"/1408, 0x580, 0x8800}, {&(0x7f0000010b20)="01001c0000000100000005001d000000010046494c4530000000000000000000", 0x20, 0xa000}, {&(0x7f0000010b40)="01000000001c0001000005000000001d000146494c4530000000000000000000", 0x20, 0xb000}, {&(0x7f00000008c0)="01001e005100010000000069006c0065003000000000e6f04c670b2ba013c1e58303e9e17c85a1ac3999aeea37ed1802774ad402ef3b322d490d2470199200eed331bc5b5aa0bd19339550bcb44dd1d2a89c65d4c5fcefbca7927a9f39f2c1d9f1d82e8162c58b0e38221926369843011268335dde975a91894a17878d4ab9f0470e30095149ab2d874f949c2cefe90edf7b68ff425fcf2c2fbf6d9300e932e83f7e7a8f881a521e714d1dd64ca863c71a27065bb0b038bb70481af46c32578cf59387e9a846b3811ffae03cbc254090234121096e1f4cbba308b9d536f51bb5426e2b0dc8ebefbf235867e4b8c6f5af107183d5925ff20ab394bfaf366a575671913e9934eae9d7", 0x108, 0xc000}, {&(0x7f0000000a00)="88001c0000000000001c00080000000008007a090c0c001e0002000001000001010053500701bace709052050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a0b0c0c001e007a090c0c0035007a090c0c001e0043451c01200000fd000000200000000000000000ed000000000000ed66001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008c00210000000000002164000000000000647a090c0c001e00000000010000010a46494c452e434f4c3b310041410e0254455854756e6978000052520501894e4d0e010066696c652e636f6c64505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000074001d0000000000001d00080000000018007a090c0c001e00020000010000010546494c453052520501894e4d0a010066696c6530505824016d4100000000416d020e0000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860022000000000000220a0000000000000a7a090c0c001e00000000010000010846494c45312e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6531505824416d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e00008600230000000000002328230000000023287a090c0c001e00000000010000010846494c45322e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6532505824016d8100000000816d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c11bed46e3bd276471e00008600230000000000002328230000000023287a090c1c001e00000000010000010846494c45332e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6533505824016d8100000000816d02000000000000020000000000000000000000000000000554461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000b29e0dab9c906da7ffff7b0bfe3b41214f6c362ba753e16fa4f697365db2095524da3eb3a93c3e212e511de9db25e3ce34c3ec3f12e04386ed76095459835832513cd6d693cf7e5a95639f7dffee256394d2f029c51e1cd234f600d4", 0x3dc, 0xe000}, {&(0x7f0000010f20)="66001d0000000000001d00080000000008007a090c0c001e000200000100000101005252050181505824016d4100000000416d02000000000000020000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000066001c0000000000001c00080000000008007a090c0c001e000200000100000101015252050181505824016d4100000000416d03000000000000030000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000860028000000000000281a0400000000041a7a090c0c001e00000000010000010846494c45302e3b310041410e0254455854756e6978000052520501894e4d0a010066696c6530505824016d8100000000816d01000000000000010000000000000000000000000000000054461a010e7a090c0c001e007a090c0c0035007a090c0c001e0000aa00290000000000002900000000000000007a090c0c001e00000000010000010846494c45312e3b3100525205018d4e4d0a010066696c6531505824016da100000000a16d010000000000000100000000000000000000000000000000534c32010008000003746d70001673797a2d696d61676567656e32383037373134373932000566696c6530000566696c653054461a010e7a090c0c001e007a090c0c0035007a090c0c001e000000000000", 0x200, 0xe800}, {&(0x7f0000011260)="22001f0000000000001f009c12080000000008007a090c0c001e0002000001000001010022001e000000007a090c0c001e000200000100000101012c0028000000000000281a040000000004090000000ce71e00000000010000010a00660069006c00650030002c00290000000000002900000000000000007a090c0c801e00000000010000010a00660069006c006500310000000000", 0x97, 0xf804}, {&(0x7f00000004c0)="4552ed010a548701525249505f313939314154484520524f434b20524944474520494e544552432b414e47452050524f544f434f4c2050524f564944455320535550504f525420464f5220504f5349582046494c452053595354454d2053454d414e54494353504c4541534520434f4e545d43542044495343205055424c495348455220464f522053504543494649434154494f4e20534f555243452e2020534545205055424c4953484552204944454e54494649455220494e205052494d41525920564f4c554d452044455343524950544f5220464f5220434f4e54414340206a80f77503494e464f524d4154494f4e2e000000000000000000000000000000000000009613804f537b6dae272540d62919a741bb3068030eb9aaf24e2c553d8cbf396a66332caebe2d45878ccc7a8da845b235c98bf0ae61586f2b", 0x13d, 0x10000}, {&(0x7f0000011480)='syzkallers\x00'/32, 0x20, 0x11000}, {&(0x7f00000114a0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x14000}], 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB="696f636861727365743d6575632d636b3d72656c53ea61786564f02c6d61703d61636f726e2c6e6f6a6f6c6965740000000000000000001aa0f463e1adbd84a37b43f324bb410d55a379e3eb011cb96680920b093efd06b5431eca1a"], 0x1) mount(0x0, &(0x7f0000000140)='./file0\x00', &(0x7f0000000000)='binder\x00', 0x0, 0x0) r0 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) r1 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_REG(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000100)=ANY=[@ANYBLOB="14000000", @ANYRES8=r0, @ANYBLOB='\x00'], 0x14}, 0x1, 0x0, 0x0, 0x40841}, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000400)=ANY=[@ANYRES32=r0, @ANYRES8=r0]) sendmsg$NL80211_CMD_TDLS_MGMT(r1, &(0x7f0000000640)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000600)={&(0x7f0000000480)=ANY=[@ANYBLOB="06000000", @ANYRES16=r0, @ANYBLOB="00042abd7000fcdbdf255200000008000300", @ANYRES32=0x0, @ANYBLOB="050089005b0000000a000600ffffffffffff0000"], 0x30}, 0x1, 0x0, 0x0, 0x4000080}, 0x4001) r2 = openat(0xffffffffffffff9c, &(0x7f0000004280)='./file0\x00', 0x0, 0x0) getdents64(r2, &(0x7f0000000080)=""/253, 0xfd) r3 = creat(&(0x7f0000000040)='./file0\x00', 0x0) openat$procfs(0xffffffffffffff9c, &(0x7f00000007c0)='/proc/partitions\x00', 0x0, 0x0) ioctl$KDSETMODE(r3, 0x4b3a, 0x0) r4 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r4, 0x8933, &(0x7f0000000040)={'veth1_vlan\x00', 0x0}) r6 = openat$mice(0xffffffffffffff9c, &(0x7f0000000680), 0x202) execveat(r6, &(0x7f0000000800)='./file0\x00', &(0x7f0000001180)=[&(0x7f0000000880)='overlay\x00', &(0x7f0000000f40)='binder\x00', &(0x7f0000000f80)='binder\x00', &(0x7f0000000fc0)='nl80211\x00', &(0x7f0000001000)='overlay\x00', &(0x7f0000001040)='.\\#+!(\x00', &(0x7f0000001080)='binder\x00', &(0x7f00000010c0)='\x1a-\x00', &(0x7f0000001100)='iso9660\x00', &(0x7f0000001140)='m\x00'], &(0x7f0000001300)=[&(0x7f0000001200)='/proc/partitions\x00', &(0x7f0000001240)='nl80211\x00', &(0x7f0000001280)='nl80211\x00', &(0x7f00000012c0)='veth1_vlan\x00'], 0x400) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)=@ipv4_newaddr={0x28, 0x14, 0x1, 0x2, 0x0, {0x2, 0x18, 0x0, 0x0, r5}, [@IFA_LOCAL={0x8, 0x2, @remote}, @IFA_BROADCAST={0x8, 0x4, @local}]}, 0x28}}, 0x0) [ 950.948089] xt_CT: You must specify a L4 protocol and not use inversions on it 00:26:13 executing program 1: socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff}) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r4 = syz_open_procfs(0xffffffffffffffff, 0x0) ioctl$SG_IO(r4, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) ioctl$KVM_SET_SREGS(r4, 0x4138ae84, &(0x7f0000000140)={{0x1, 0x2000, 0xc, 0xe7, 0x86, 0x4, 0x7, 0x5d, 0x1f, 0x3, 0x7f, 0x20}, {0x4000, 0xd000, 0xa, 0xd0, 0x81, 0x5, 0x1, 0x4, 0x4, 0x1, 0x8, 0x3}, {0x10000, 0x6000, 0x9, 0x1f, 0x20, 0x9, 0x97, 0xb7, 0x7, 0x2, 0x7f, 0x7}, {0x3000, 0x0, 0xd, 0x3f, 0x9a, 0x81, 0x0, 0x2, 0xac, 0x76, 0x1, 0x3f}, {0x4, 0x3000, 0x4, 0x3, 0xb4, 0x4, 0x1, 0x9, 0x7f, 0x6, 0xda, 0x1}, {0x10000, 0x3000, 0x0, 0x9, 0x1f, 0x3f, 0x4, 0x9, 0x0, 0x3f, 0x34, 0xb1}, {0x4, 0x4000, 0x0, 0x1, 0xb1, 0x80, 0xa4, 0x7f, 0x20, 0x3, 0x5, 0xac}, {0x100000, 0x5000, 0x0, 0x1, 0x3, 0x1, 0x0, 0x3, 0x4, 0x80, 0x80, 0x4}, {0xd000, 0xfff}, {0x1000, 0x4}, 0x40022, 0x0, 0x10000, 0x220, 0x7, 0x0, 0x10000, [0x7, 0x8000000000000000, 0x3, 0xf00]}) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) write$binfmt_misc(r3, 0x0, 0x4) write$binfmt_elf64(r1, &(0x7f0000000ac0)=ANY=[@ANYBLOB="7f454c46000000000000000000000000000000000000000000000000000000004000000000003a3d55e20c2c542900000000000000003800"/120], 0x78) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000100)) (async) pipe(&(0x7f00000000c0)) (async) syz_open_procfs(0xffffffffffffffff, 0x0) (async) ioctl$SG_IO(r4, 0x2285, &(0x7f0000002740)={0x0, 0x3, 0x1000, 0x4, @scatter={0x4, 0x0, &(0x7f0000001640)=[{&(0x7f00000004c0)=""/218, 0xda}, {&(0x7f00000005c0)=""/18, 0x12}, {&(0x7f0000000600)=""/42, 0x2a}, {&(0x7f0000000640)=""/4096, 0x1000}]}, &(0x7f0000001680)="cdbc714fc78e31c06453a2e924cb5e64f4c5e08d785d67a6f1f3e909850263427bc489f3798df8c72b39a42bc3848a717649724aeffb9030ac73c8e2c5ab4aa9eecedfc34e7ac10a0664f707f04ab5924c131ae82334c6ed9dbd5a38e18b31b9549a97876d135019820c59a6a6cd8ee6d1880e8a7df93c7db8ded389f2f624e3bba33ec12ab9c33a50fa55339740fef6949efdc3a7b5e308d0a3be449d28263d68aee22ccd126f1ef4314c6bc3dc88f8701e4b612d695625f13c5659f5bc59759759e5730066bbfcf8a2137a4867ff1df6fcca66ac33667491a67003fdfda07cc4231706dadf07e96578019bd3b29230faae47814479b15f3a60181fefc31e7dc6ef22d23989b9420a82b1ba1086bdee4f63039dda66a411fe23b471cfcccb4feec5e395ebfedf9d64ae292b82864aa4f26e33657cf732b5109753266481b6dc9fefc855a80bb56e5d6ecd30f52cd8ea818f5c971de0eca57d8a60cea834f7dea419e936c8aacf8ffeba660292bd6dd9e85048680158d030ca38438806a0f539c60a4b3eacce356c3209102e8f1f3b92218afa833a169911ea357b62b6ba32ab8635bdf7d316ecfd21462b2c162f9d484fd3c8c1aa059b5c913dad8ca8f534e9a7230babb296e802db163616d0cd30731de80bf4911233ac7d0b91f218c3034c2aaf23ce45d0e0bbc3a309e24500d8bfa69815d44fa9b100f95b682467c5bba29f431263399fc7a2fcc5d440023452092943d08a8e85abac0125f243e2a74b954205976bebe1a2fe0340fc4d004669aa92fb194cb404c5816ff52a913c24ab9388416c0574fda64c03235fae83892fc9471ec964a7baeeaa98e7fec5d511ada5a7f3df24264ea150f91f74859a0699eba485a661932f50c082e7c4eb04f600e99d7143c1f5f920fc696f63060c90116b8339553b3a3dfee1dffaebd5d9dac82a61014d49fdfc20a075e13c6bac6b4d7fbfa01de02c9a0489ba7b7f0db748e8f2e2e65b36d5fb1e1e68ebe4535937dc0572b5ae89a5ee14a0e1af9f280cf5b1eb175ba935ad544c83a6d33e293316ba97eb2873ca8328d8b15f81e8a70a6b3d406d89c5e2e6bfc7a63245c62b00efbd2bc0eaa440cc8fc4b9de521ecafc5ca9e9620eb7d1f14982a44e159f3aaae2c541910c6b439e525633a57343fa4ba1c22dcea902f42cbbed2af97091fd44cf54a642cfc3b07f255de0ad1c434e71a107f5b96af003ed60fcf92d4aa10e4b93fffd08aa90b98bca609f74ae914352665687b0871a926073cdb46eac1346724f9bf357d0d6c0b928ae3093bd95c787c36db15b4b8ffd46efab5c50ad2be102b1c44ab9be996b2aeaa29d2ad5b0e49fa34af198a8d6e68afb290244207d12cb2421d1432a4f5c8ea52ce856ac73eaf44e70a210bef45b57da5a47aaf1dd2f474887d37612dee44c476637b92235f5e465c240cda82047e17026faf78badfed6a8b48d14364b70e7821b59e3dfd26f2135d9654fcc9656d6b592a0cf1469ef982dd0c6d26e0249e324f600afe008b8feae2ff0f1b5dab1147e0d19d6ae5589fa246169c5e37d519eddbbe7856295f8c3ff72f3e95532fc4f46c759a5825c4582c4aa30398af47e89990cfe1e1f8d84b597284102a0157c9a2dc963df70fc9289bb10e882cad3ce9726f43caa983e506b1ee22335c3d54bbd5f75b254f26b1851b78cb5cf24b036b7359a44434e7200f3af576c3d99e2bfbacb3a9cbd9e5a4beb388fee773f0a6a16dabbace9080c8209cc0dbe4386ec4556afa19657b9b2807b05baf4dc65f92e9856bc3a4296c7b7091072e9d4c45bdce06ce7db19f58de26031e481e0eb884ce1e5fae07577986447bf9b96736f6d216b05a08445c7332ba6fd3b4c1afd563b45eb56734f6f3d76e44a19e7227ba4b09e30a89dd4ee0a3bceb8461a1865805edaec2f6c9abe5660f53864cff38ac664116683ed2d4c8d96e8802a33de8e95ff8c1400a6acc44c59a22cae0d3ff15be5c80b3d5b14be5937677bd8ba4e6ee4b4cef1606ed6236a48334ce8de9285beff898550eead3b968220bfc425f2f87455701b4022ce9740ddb959ad461fbf289d96b42ec78ee55cbd93f2ad6017ce526d8a1a6baf4a4fe2acb142c0407691d26adde38f2a58fd4f7fd1a4bf658f1a46a66e05df3553ec813a43e8b615406b633f1e43b20ce76d77c969ce5a2ba76e2f86c6820a12b1c9da2d86ab237d2ab7d112470be83e01f38a64896990dec0c3ccfcc698eef730b8b1277a17a04b0a0e58ae16a03200652d9e84be6c1d90fa0060f0f7046761bf09e3efa191f813c338ac61cf00e727f747bd2d08a9c579053ffbade62dbf66cdffbbafcbc1e679ff74e56cb41eb4cfbb15b3e48772f3807b423a3f0abe0cec3c1c7657e6966bca70291ff832db0a361d2cad656c94b6adc210d65ddd456cd6504234598192b3ae7a25f4c39b3874e6a52bddc3a1648ae6d0143db137a3b34de71b6a1254bc34af002d4aed9b547d4a2047e16c67c22b430a495f6990d21f39c3974dba9db4c8f52965650406e3b73327be05d3f2d09e863af0a11b74b988f65a5a6d6b79c03a98c4892de951011ec8b00b14c66616999abc3421e7ed03b7d2460e7593309728d464ad0822ab682e45b1e3382d2d340b7cb1033df104d2da74962ce4a7943055f25456dc405cdfdf80574dec44208513d9ff4b858e47c9e15d9f90ac05eca44039e8736066b387b1042e012b61ad060e007755b02a570b92033ef88c982ea15a15fc1ff2d86fb25be0db475845102cb18330f088fae56248a4f5748ca39dd163a9388875e8c360339a23ded81cdaacc5923c0f2581d89cdf20aaf1857ff04f71c9d82bfa05bd74ffc70b4053d18d2d77831ee4e119defbc3546e8a8f15b84fa0bdc8c949e9eee1c0cc7559196d7a62d9baed9dbad61f460686cb689cbe2c9f16bd45638e38cfa38016dcb717015e2620516617f7b803bcb1691793b8c60827560f2c8f9ffecb7c2e10cf968d4638f0fcb7eeab5376278b9e8132321d7c16e44a4be714435b35b7dfc2e10ef64d76ef5cfc6083dca3c367f1904a317b73ef44033d90d15ecd992f07e35029f4356e7d8201fcb46f27fea17ee1bde029a5784d52180fd004c6ca890bf730dd7d4a054c3154155c0feadcd7141be9be36fad6084075bcdd5157fbcc8a40ecb2a1954c634a69e933365c1583c7009ade8da4dec025c506227cda9f8c6b9a365dd60cf1e4cfec0b126b04c4c9613be482983968f8f8e7ac3edc14f5e932e1801ceffcaa6ffd63ce9f26262f5bb8110faab39a002e1153e0e261560e932cabb1a82c3e23b786e7d28215c5dc83f0683146c96cbe92d6217eb105920d8107d1b0f8ff2088336a60598cf830d0eab6f1a71c512bfb00e5261c53af595adfbec5403706104cb46a853c892fb814bdae3a1c4f796f0eb08721868e6d2da4e12fa19c5ff7e28988dfbf72b1b94cd151014ef1c6bd25cc9651e7ae04d71a902de72fc4f60d56da84ca031c4cc10899a5fea2241585117a5a3f85aaf29d6cc9bc586b69d6035680eae13fc1426b9920dc2929d098b88d3a8d9c32dc499aeae3c787f501c5403baaecc19d1bb74cd3e5328faa93c2f605ad4bf9cc0bfeebdbb71fa93c823dc7a8651a7c28d73438c1763e8d27550dbf8dcd0e1936eb4387e98762f6dbefe8c78d46c6c04d63056339f2eeb4d69d37271d8d94805e13cc88d239db4bfca98418569a3515f5065fcbe48ed0d5765b400db87029f1322aa375e71291b72c4ac08acb8dd4bbd3c4d629cfa060658a2edcf633af6372afe9cac2ff5b95d38af13451d7962f02ee387e4770e9554b463554250009df980b4e12b084c9ff61d0e57e0df515c94e3f93027bffa52eae1962e272233b24d0b21760a7f6bf7867e0b01a63fb01d6579f09869560d4ba4ca29de449f29b832772101f1005c828c07a53c5cd260bbd8e98e74c70998b62a845d52a6ab988fc05d06d1f7d175df029c088100dfb52df9f0f281be8c7b2cb3b93fbb8379eb1a58f3905298b348e017e79daf6a30cf01777026a219f9d6c4e6390ba7d8da54e6c8cc76fdfdf03c65d88eb34734319015d808c707ed04c9c9a17307e41be804f921cc233e274c0cdc0b156924b3cb8276e8cbfd150c9a543caa2c7d6fe5b8bfa9e289cb5262c3862cc0c17325b1a19ea354a4432fe8f9e824cfd04d1bba00f6a6d5180a03e1154f2f126fc3f3475ae337340f2974742816e7ff009ed36aa08f6faef6a92425bd5de64f4ef5168f2bfd7a5aa0c3b4718bcb36eb2842f2a8a72ac88f7de2e76b43a42035ce90295c6d37b7a439a24ca6ce156ca77b14110ea9abd5ca43c9dbe6701c673916d3ce281443d5200221c2e2816bc5c934dd60d22885691644a02c588b2830b36a46afe0fb78892e5507b71c2ac10b82a4f119284dd998d4a544b050b8364f4446555fab837920f09a87ebcb3c53555081cae2a79f164fa2a8c8b5b59876c45d79a6d45ea239bcbbbf3f66ca4ebfe5ae7076352d90ac641a47803593a500839a691b09d8ca252baec8ba1195f1e2617a3a94e5a78a8ae6b945e10bad1c979cd48a689e9113b44806257e06b229f25c767823c4dede5d724a66a950d2f541226ab3bca780237ddb1cdb341bc11fc3644ee22cc479ca223495593d6fe46745287f8a3b8810121a2ae77305d76e79d8f8d4a913e2795d0b2148692acd44e35e0b89b5c304f06ff630b9c373e19bd0c2f758df450ae06bc690d051782c425e88e243c43683909235fae316dd197265c6cd0add389b4f1ab3ab005f6708b768bd5d1327e15dfb88f9a272631a1bc9e97e50c3a1a90bfb3413498df77c7fbd310b65f16902cbb26cbd1040a52a874230c53a7d9d253a5e49cc92a05c01c82a032ec7dd4c1fd075ec9213e430f9aa3f6a79f6bc9600f3d43da0fdf825c6a811d257caf03d71d927379062ef704dce0076d6491fdc6e8476a61cd6042953a542cef60d61ef9ce7905155364e478bb5eb3731fb4ee82392504fcd6054e83d96ef474c8425b217de76186d86d8d8892669cc8c14f8cc95e59906c8ef32f176e6ecad98fb68989c6b3d5c843f2061ed9ee56bdb4d1c18992da57fdfa53762f7a9aee9c712364de5d436ede621319405e9b81d85641a86c6ef3acb5ac568c60e485d2685fc8baaf6850876c267d4a29c0dc6dcc554c82748fff7975ec3f64c3f008bd650b777a76fd1104f19434bafca5f012906c49adec9e4e447c5d354f0c183026a717894c43d1635c6c2faf7b8031df2fb1ea17cce65382e5f8576b938f14a5275a9ce4d01f5ac875d5ea198700191d47527b85cbb1029684d87430bb8360366873b33b2b6b0cd36b052d89543902de402a4a47dd824ca783cb56f8dce8d1f6afbbacc5469e1fc5c857b7c390ef9d398c1a8c6ceba97bf68f0ff16ccb9e43632f169609f615b37094d4ecf04a0f83900eefa1f639c6d7b399adede95d9b2c094368e3600c8b02941235afc806b7eb8c9624e060463126f9e59127b8a7f03ea510d35f4ee561ed6f144e632487ead6cb2362f6aa5af8d7fe203a81ac0ff6fe0e114d85f1a8b3c395ffdd818977a3ddad15eddb986bcb2503ce6dff994c3dc1cad8a1b4a98d1526a771a32a8ea320a43e8c9278c55dd6f7c20e971d34a5eb0ca86a04821d95e1c50c1180207d9d344cb33d0c67d7fe60de0e09a96eca904ffbed2efdb29216f76d286255dc7f8364f78443bb1b8c0e7e10f16f3530324971bca2112ca71e09db89aa71a5099907768bc89e4f26762656db62a0d7363920fb", &(0x7f0000002680)=""/95, 0x5, 0x10001, 0x1, &(0x7f0000002700)}) (async) ioctl$KVM_SET_SREGS(r4, 0x4138ae84, &(0x7f0000000140)={{0x1, 0x2000, 0xc, 0xe7, 0x86, 0x4, 0x7, 0x5d, 0x1f, 0x3, 0x7f, 0x20}, {0x4000, 0xd000, 0xa, 0xd0, 0x81, 0x5, 0x1, 0x4, 0x4, 0x1, 0x8, 0x3}, {0x10000, 0x6000, 0x9, 0x1f, 0x20, 0x9, 0x97, 0xb7, 0x7, 0x2, 0x7f, 0x7}, {0x3000, 0x0, 0xd, 0x3f, 0x9a, 0x81, 0x0, 0x2, 0xac, 0x76, 0x1, 0x3f}, {0x4, 0x3000, 0x4, 0x3, 0xb4, 0x4, 0x1, 0x9, 0x7f, 0x6, 0xda, 0x1}, {0x10000, 0x3000, 0x0, 0x9, 0x1f, 0x3f, 0x4, 0x9, 0x0, 0x3f, 0x34, 0xb1}, {0x4, 0x4000, 0x0, 0x1, 0xb1, 0x80, 0xa4, 0x7f, 0x20, 0x3, 0x5, 0xac}, {0x100000, 0x5000, 0x0, 0x1, 0x3, 0x1, 0x0, 0x3, 0x4, 0x80, 0x80, 0x4}, {0xd000, 0xfff}, {0x1000, 0x4}, 0x40022, 0x0, 0x10000, 0x220, 0x7, 0x0, 0x10000, [0x7, 0x8000000000000000, 0x3, 0xf00]}) (async) splice(r0, 0x0, r3, 0x0, 0x10000, 0x0) (async) vmsplice(r2, &(0x7f00000003c0)=[{&(0x7f0000000000)="c0", 0x1}], 0x1, 0x0) (async) write$binfmt_misc(r3, 0x0, 0x4) (async) write$binfmt_elf64(r1, &(0x7f0000000ac0)=ANY=[@ANYBLOB="7f454c46000000000000000000000000000000000000000000000000000000004000000000003a3d55e20c2c542900000000000000003800"/120], 0x78) (async) 00:26:14 executing program 4: r0 = openat$vim2m(0xffffffffffffff9c, &(0x7f0000000140), 0x2, 0x0) (async) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0x3}, r1, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) (async) r2 = socket$inet_sctp(0x2, 0x5, 0x84) sendto$inet(r2, &(0x7f0000000140)='^', 0x34000, 0x0, &(0x7f0000004ff0)={0x2, 0x0, @rand_addr=0xfffffffffffffffe}, 0x10) (async) ioctl$sock_SIOCGIFVLAN_ADD_VLAN_CMD(r2, 0x8982, &(0x7f0000000040)={0x0, 'team0\x00', {0x700}}) (async) r3 = socket$inet6_tcp(0xa, 0x1, 0x0) setsockopt$IP6T_SO_SET_REPLACE(r3, 0x29, 0x40, &(0x7f00000001c0)=@raw={'raw\x00', 0x3c1, 0x3, 0x4c8, 0x2e0, 0x9403, 0x0, 0x0, 0x2c0, 0x3f8, 0x3d8, 0x3d8, 0x3f8, 0x3d8, 0x3, 0x0, {[{{@uncond, 0x0, 0x298, 0x2e0, 0x0, {}, [@common=@inet=@recent0={{0xf8}, {0x0, 0x0, 0x1, 0x0, 'syz0\x00'}}, @common=@inet=@recent0={{0xf8}, {0x0, 0x2, 0x1, 0x0, 'syz0\x00'}}]}, @common=@inet=@TEE={0x48, 'TEE\x00', 0x1, {@ipv4=@loopback, 'virt_wifi0\x00'}}}, {{@uncond, 0x0, 0xd0, 0x118, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@CT0={0x48, 'CT\x00', 0x0, {0x0, 0x0, 0x0, 0x0, 'syz1\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x528) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) setsockopt$IP6T_SO_SET_REPLACE(r4, 0x29, 0x40, &(0x7f00000001c0)=@raw={'raw\x00', 0x3c1, 0x3, 0x4c8, 0x2e0, 0x9403, 0x0, 0x0, 0x2c0, 0x3f8, 0x3d8, 0x3d8, 0x3f8, 0x3d8, 0x3, 0x0, {[{{@uncond, 0x0, 0x298, 0x2e0, 0x0, {}, [@common=@inet=@recent0={{0xf8}, {0x0, 0x0, 0x1, 0x0, 'syz0\x00'}}, @common=@inet=@recent0={{0xf8}, {0x0, 0x2, 0x1, 0x0, 'syz0\x00'}}]}, @common=@inet=@TEE={0x48, 'TEE\x00', 0x1, {@ipv4=@loopback, 'virt_wifi0\x00'}}}, {{@uncond, 0x0, 0xd0, 0x118, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@CT0={0x48, 'CT\x00', 0x0, {0x0, 0x0, 0x0, 0x0, 'syz1\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x528) r5 = accept4(r4, 0x0, 0x0, 0x0) ioctl$vim2m_VIDIOC_REQBUFS(r0, 0xc0145608, &(0x7f00000000c0)={0xffffffe0, 0x2, 0x2}) (async) sendto$inet(r5, &(0x7f0000000180)="0af22e2283c90b2f1fb6cf5ec468282cdfb6666a33a76b536994d60a9fb6b4ef84342fa90fa4ac2f57de33e7f904edb88317bc64954d7f62266f059a58828349f4595fa268e43c495eabc0661acbea6556f8f082bc9e7d108200d7e5e8d777cb5f7af4fe040194a2fcc82abaee688254a1078fb93831f7e4dfb7f5fe2b904efe78c3511a522225d1bb05a5776bd7cbe1e5c868fe5ef8f929762b2a8f", 0x9c, 0x40, &(0x7f0000000080)={0x2, 0x4e21, @rand_addr=0x64010100}, 0x10) (async) openat$vim2m(0xffffffffffffff9c, &(0x7f0000000840), 0x2, 0x0) (async) ioctl$vim2m_VIDIOC_QBUF(r0, 0xc058560f, &(0x7f0000000880)=@multiplanar_userptr={0x0, 0x0, 0x4, 0x10000, 0x0, {0x77359400}, {0x0, 0x0, 0x0, 0x0, 0x0, 0x2, '#\x00@\x00'}, 0xfffffffe, 0x2, {&(0x7f0000000000)=[{0xffffffff, 0x0, {0x0}}, {0x0, 0x0, {0x0}}]}, 0x96000}) r6 = syz_open_dev$vcsn(&(0x7f0000000100), 0x5, 0x1) ioctl$vim2m_VIDIOC_REQBUFS(0xffffffffffffffff, 0xc0145608, &(0x7f0000000900)={0x8001, 0x1, 0x4}) (async) sendto$inet6(r6, &(0x7f0000000780)="0f9f221bc02e219b1357dfbf932d97438172a7b971cd5e1f0d5c12cf9c01c1c7e5a708e23706a29f48fa604511d9a7d7ba5e51ae691848da4100f658494af2d5da897ac77ab2ab8ee06759cf34c2c0e02f30b691123d590c5c814b0ba2b4a0d13dcbf9ce11a39f661a2c94300ec0", 0x6e, 0x4000801, &(0x7f0000000800)={0xa, 0x4e24, 0xef, @private2, 0x101}, 0x1c) (async) ioctl$AUTOFS_DEV_IOCTL_READY(r6, 0xc0189376, &(0x7f0000000980)=ANY=[@ANYBLOB="010000000100000018000000", @ANYRES32=r4, @ANYBLOB="00080000000000002e2f66696c65300088698ebd9829f64220b8849384ce1bfc770836"]) (async) connect$inet6(r7, &(0x7f0000000940)={0xa, 0x4e22, 0xe6, @initdev={0xfe, 0x88, '\x00', 0x1, 0x0}, 0x1000}, 0x1c) [ 994.120473] ieee802154 phy0 wpan0: encryption failed: -22 [ 994.126073] ieee802154 phy1 wpan1: encryption failed: -22 00:27:08 executing program 2: r0 = perf_event_open(&(0x7f000025c000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) (async) mmap(&(0x7f0000341000/0x2000)=nil, 0x2000, 0x0, 0x11, r1, 0x0) (async) r2 = gettid() process_vm_writev(r2, &(0x7f00000002c0)=[{&(0x7f0000000040)=""/241, 0xf1}], 0x1, &(0x7f0000000180)=[{&(0x7f0000217f28)=""/231, 0xe7}], 0x1, 0x0) (async) r3 = perf_event_open(&(0x7f0000000040)={0x2, 0x80, 0x2, 0x4, 0x40, 0x1f, 0x0, 0x1, 0x18000, 0x2, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x10000, 0x1, @perf_config_ext={0x10000, 0xffffffff}, 0x10, 0x2, 0xffffffff, 0x1, 0x4, 0x9, 0x8, 0x0, 0x1d40, 0x0, 0x81}, r2, 0xb, 0xffffffffffffffff, 0x2) (async, rerun: 64) ioctl$PERF_EVENT_IOC_SET_OUTPUT(r0, 0x2405, r1) (rerun: 64) r4 = fcntl$dupfd(r0, 0x406, r3) ioctl$PERF_EVENT_IOC_PERIOD(r4, 0x40082404, &(0x7f0000000140)=0x1) mmap(&(0x7f0000395000/0x2000)=nil, 0x2000, 0x0, 0x11, r0, 0x0) ioctl$PERF_EVENT_IOC_DISABLE(0xffffffffffffffff, 0x2401, 0x0) r5 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x0, 0x12, r5, 0x0) 00:27:08 executing program 0: perf_event_open(&(0x7f0000000340)={0x2, 0x80, 0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x6, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp, 0x0, 0x4800000000000000}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) [ 1055.554725] ieee802154 phy0 wpan0: encryption failed: -22 [ 1055.560327] ieee802154 phy1 wpan1: encryption failed: -22 [ 1098.429480] INFO: task systemd-udevd:4698 blocked for more than 140 seconds. [ 1098.436797] Not tainted 4.19.211-syzkaller #0 [ 1098.459395] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1098.467374] systemd-udevd D25024 4698 1 0x00000100 [ 1098.488190] Call Trace: [ 1098.491816] __schedule+0x887/0x2040 [ 1098.495549] ? io_schedule_timeout+0x140/0x140 [ 1098.509420] ? mark_held_locks+0xa6/0xf0 [ 1098.513505] ? rwsem_down_read_failed+0x20a/0x390 [ 1098.518345] schedule+0x8d/0x1b0 [ 1098.536432] rwsem_down_read_failed+0x20a/0x390 [ 1098.548148] ? rt_mutex_futex_unlock+0xf0/0xf0 [ 1098.559426] ? HARDIRQ_verbose+0x10/0x10 [ 1098.563505] ? HARDIRQ_verbose+0x10/0x10 [ 1098.567576] call_rwsem_down_read_failed+0x14/0x30 [ 1098.587776] __percpu_down_read+0xba/0x130 [ 1098.599439] uprobe_start_dup_mmap+0xb7/0xd0 [ 1098.603869] copy_process.part.0+0x2bb3/0x8260 [ 1098.608449] ? __put_seccomp_filter+0xa0/0xa0 [ 1098.628162] ? __cleanup_sighand+0x60/0x60 [ 1098.638432] ? aa_af_perm+0x230/0x230 [ 1098.649347] ? move_addr_to_user+0x190/0x1d0 [ 1098.653779] _do_fork+0x22f/0xf30 [ 1098.657238] ? fork_idle+0x220/0x220 [ 1098.676475] ? syscall_slow_exit_work+0x630/0x630 [ 1098.688110] ? entry_SYSCALL_64_after_hwframe+0x3e/0xbe [ 1098.699398] ? trace_hardirqs_off_caller+0x6e/0x210 [ 1098.704425] ? do_syscall_64+0x21/0x620 [ 1098.708401] do_syscall_64+0xf9/0x620 [ 1098.726994] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1098.735620] RIP: 0033:0x7eff1881838b [ 1098.745946] Code: Bad RIP value. [ 1098.757869] RSP: 002b:00007fff5825a630 EFLAGS: 00000246 ORIG_RAX: 0000000000000038 [ 1098.779278] RAX: ffffffffffffffda RBX: 00007fff5825a630 RCX: 00007eff1881838b [ 1098.786564] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011 [ 1098.794218] RBP: 00007fff5825a680 R08: 00007eff199c98c0 R09: 0000000000000210 [ 1098.801946] R10: 00007eff199c9b90 R11: 0000000000000246 R12: 0000000000000000 [ 1098.809497] R13: 0000000000000020 R14: 0000000000000000 R15: 0000000000000000 [ 1098.816835] INFO: task syz-executor.1:8138 blocked for more than 140 seconds. [ 1098.824455] Not tainted 4.19.211-syzkaller #0 [ 1098.829847] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1098.838417] syz-executor.1 D24056 8138 1 0x00000004 [ 1098.844419] Call Trace: [ 1098.847020] __schedule+0x887/0x2040 [ 1098.859298] ? io_schedule_timeout+0x140/0x140 [ 1098.863904] ? mark_held_locks+0xa6/0xf0 [ 1098.867963] ? rwsem_down_read_failed+0x20a/0x390 [ 1098.886463] schedule+0x8d/0x1b0 [ 1098.896202] rwsem_down_read_failed+0x20a/0x390 [ 1098.909070] ? rt_mutex_futex_unlock+0xf0/0xf0 [ 1098.914018] ? HARDIRQ_verbose+0x10/0x10 [ 1098.918090] ? HARDIRQ_verbose+0x10/0x10 [ 1098.929296] call_rwsem_down_read_failed+0x14/0x30 [ 1098.934249] __percpu_down_read+0xba/0x130 [ 1098.938485] uprobe_start_dup_mmap+0xb7/0xd0 [ 1098.944353] copy_process.part.0+0x2bb3/0x8260 [ 1098.948948] ? do_raw_spin_unlock+0x171/0x230 [ 1098.954374] ? _raw_spin_unlock+0x29/0x40 [ 1098.958563] ? finish_mkwrite_fault+0x640/0x640 [ 1098.963585] ? __cleanup_sighand+0x60/0x60 [ 1098.967848] ? __do_page_fault+0x6d1/0xd60 [ 1098.972441] _do_fork+0x22f/0xf30 [ 1098.975906] ? fork_idle+0x220/0x220 [ 1098.980015] ? up_read+0x17/0x110 [ 1098.983479] ? __do_page_fault+0x180/0xd60 [ 1098.987717] ? entry_SYSCALL_64_after_hwframe+0x3e/0xbe [ 1098.993828] ? trace_hardirqs_off_caller+0x6e/0x210 [ 1098.998863] ? do_syscall_64+0x21/0x620 [ 1099.003162] do_syscall_64+0xf9/0x620 [ 1099.006978] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1099.012557] RIP: 0033:0x7f5f3c1412ab [ 1099.016274] Code: Bad RIP value. [ 1099.019937] RSP: 002b:00007ffc09e86140 EFLAGS: 00000246 ORIG_RAX: 0000000000000038 [ 1099.027646] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f5f3c1412ab [ 1099.035229] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011 [ 1099.043320] RBP: 0000000000000001 R08: 0000000000000000 R09: 0000555556e45400 [ 1099.050886] R10: 0000555556e456d0 R11: 0000000000000246 R12: 0000000000000001 [ 1099.058867] R13: 0000000000000000 R14: 0000000000000001 R15: 00007ffc09e86220 [ 1099.066526] INFO: task syz-executor.5:8139 blocked for more than 140 seconds. [ 1099.074070] Not tainted 4.19.211-syzkaller #0 [ 1099.079076] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1099.087329] syz-executor.5 D24368 8139 1 0x00000004 [ 1099.093284] Call Trace: [ 1099.095878] __schedule+0x887/0x2040 [ 1099.099883] ? io_schedule_timeout+0x140/0x140 [ 1099.104477] ? mark_held_locks+0xa6/0xf0 [ 1099.108536] ? rwsem_down_read_failed+0x20a/0x390 [ 1099.123288] schedule+0x8d/0x1b0 [ 1099.126675] rwsem_down_read_failed+0x20a/0x390 [ 1099.139367] ? rt_mutex_futex_unlock+0xf0/0xf0 [ 1099.143964] ? HARDIRQ_verbose+0x10/0x10 [ 1099.155501] ? HARDIRQ_verbose+0x10/0x10 [ 1099.160433] call_rwsem_down_read_failed+0x14/0x30 [ 1099.165379] __percpu_down_read+0xba/0x130 [ 1099.170879] uprobe_start_dup_mmap+0xb7/0xd0 [ 1099.175298] copy_process.part.0+0x2bb3/0x8260 [ 1099.182315] ? do_raw_spin_unlock+0x171/0x230 [ 1099.186820] ? _raw_spin_unlock+0x29/0x40 [ 1099.192087] ? finish_mkwrite_fault+0x640/0x640 [ 1099.196779] ? __cleanup_sighand+0x60/0x60 [ 1099.202180] ? __do_page_fault+0x6d1/0xd60 [ 1099.206434] _do_fork+0x22f/0xf30 [ 1099.210987] ? fork_idle+0x220/0x220 [ 1099.214708] ? up_read+0x17/0x110 [ 1099.218159] ? __do_page_fault+0x180/0xd60 [ 1099.224076] ? entry_SYSCALL_64_after_hwframe+0x3e/0xbe [ 1099.230191] ? trace_hardirqs_off_caller+0x6e/0x210 [ 1099.235212] ? do_syscall_64+0x21/0x620 [ 1099.239189] do_syscall_64+0xf9/0x620 [ 1099.244531] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1099.250514] RIP: 0033:0x7f37ff5082ab [ 1099.254243] Code: Bad RIP value. [ 1099.257603] RSP: 002b:00007ffceac99a10 EFLAGS: 00000246 ORIG_RAX: 0000000000000038 [ 1099.267012] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f37ff5082ab [ 1099.289142] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011 [ 1099.309264] RBP: 0000000000000001 R08: 0000000000000000 R09: 0000555555881400 [ 1099.316550] R10: 00005555558816d0 R11: 0000000000000246 R12: 0000000000000001 [ 1099.338660] R13: 0000000000000000 R14: 0000000000000001 R15: 00007ffceac99af0 [ 1099.359390] INFO: task syz-executor.4:8141 blocked for more than 140 seconds. [ 1099.366681] Not tainted 4.19.211-syzkaller #0 [ 1099.387096] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1099.409288] syz-executor.4 D24368 8141 1 0x00000004 [ 1099.414939] Call Trace: [ 1099.417534] __schedule+0x887/0x2040 [ 1099.429260] ? io_schedule_timeout+0x140/0x140 [ 1099.433866] ? mark_held_locks+0xa6/0xf0 [ 1099.437927] ? rwsem_down_read_failed+0x20a/0x390 [ 1099.457747] schedule+0x8d/0x1b0 [ 1099.467050] rwsem_down_read_failed+0x20a/0x390 [ 1099.479341] ? rt_mutex_futex_unlock+0xf0/0xf0 [ 1099.483937] ? HARDIRQ_verbose+0x10/0x10 [ 1099.487999] ? HARDIRQ_verbose+0x10/0x10 [ 1099.507960] call_rwsem_down_read_failed+0x14/0x30 [ 1099.519058] __percpu_down_read+0xba/0x130 [ 1099.529314] uprobe_start_dup_mmap+0xb7/0xd0 [ 1099.533748] copy_process.part.0+0x2bb3/0x8260 [ 1099.538335] ? do_raw_spin_unlock+0x171/0x230 [ 1099.543054] ? _raw_spin_unlock+0x29/0x40 [ 1099.547216] ? finish_mkwrite_fault+0x640/0x640 [ 1099.552253] ? __cleanup_sighand+0x60/0x60 [ 1099.557169] ? __do_page_fault+0x6d1/0xd60 [ 1099.561837] _do_fork+0x22f/0xf30 [ 1099.565908] ? fork_idle+0x220/0x220 [ 1099.570194] ? up_read+0x17/0x110 [ 1099.573879] ? __do_page_fault+0x180/0xd60 [ 1099.578121] ? entry_SYSCALL_64_after_hwframe+0x3e/0xbe [ 1099.583869] ? trace_hardirqs_off_caller+0x6e/0x210 [ 1099.588905] ? do_syscall_64+0x21/0x620 [ 1099.593270] do_syscall_64+0xf9/0x620 [ 1099.597087] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1099.606377] RIP: 0033:0x7f9d015192ab [ 1099.616861] Code: Bad RIP value. [ 1099.629144] RSP: 002b:00007ffe26f4b040 EFLAGS: 00000246 ORIG_RAX: 0000000000000038 [ 1099.637759] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f9d015192ab [ 1099.659328] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011 [ 1099.666616] RBP: 0000000000000001 R08: 0000000000000000 R09: 0000555555d5f400 [ 1099.688542] R10: 0000555555d5f6d0 R11: 0000000000000246 R12: 0000000000000001 [ 1099.709592] R13: 0000000000000000 R14: 0000000000000001 R15: 00007ffe26f4b120 [ 1099.720034] INFO: task syz-executor.3:16639 blocked for more than 140 seconds. [ 1099.727492] Not tainted 4.19.211-syzkaller #0 [ 1099.749232] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1099.757211] syz-executor.3 D24120 16639 1 0x00000004 [ 1099.777946] Call Trace: [ 1099.781389] __schedule+0x887/0x2040 [ 1099.785123] ? io_schedule_timeout+0x140/0x140 [ 1099.799275] ? mark_held_locks+0xa6/0xf0 [ 1099.803350] ? rwsem_down_read_failed+0x20a/0x390 [ 1099.808192] schedule+0x8d/0x1b0 [ 1099.827478] rwsem_down_read_failed+0x20a/0x390 [ 1099.837808] ? rt_mutex_futex_unlock+0xf0/0xf0 [ 1099.849257] ? HARDIRQ_verbose+0x10/0x10 [ 1099.853330] ? HARDIRQ_verbose+0x10/0x10 [ 1099.857405] call_rwsem_down_read_failed+0x14/0x30 [ 1099.878334] __percpu_down_read+0xba/0x130 [ 1099.888226] uprobe_start_dup_mmap+0xb7/0xd0 [ 1099.899251] copy_process.part.0+0x2bb3/0x8260 [ 1099.903848] ? do_raw_spin_unlock+0x171/0x230 [ 1099.908344] ? _raw_spin_unlock+0x29/0x40 [ 1099.912559] ? finish_mkwrite_fault+0x640/0x640 [ 1099.917430] ? __cleanup_sighand+0x60/0x60 [ 1099.921755] ? __do_page_fault+0x6d1/0xd60 [ 1099.926165] _do_fork+0x22f/0xf30 [ 1099.929697] ? fork_idle+0x220/0x220 [ 1099.933582] ? up_read+0x17/0x110 [ 1099.937038] ? __do_page_fault+0x180/0xd60 [ 1099.941344] ? entry_SYSCALL_64_after_hwframe+0x3e/0xbe [ 1099.946864] ? trace_hardirqs_off_caller+0x6e/0x210 [ 1099.952156] ? do_syscall_64+0x21/0x620 [ 1099.956141] do_syscall_64+0xf9/0x620 [ 1099.960024] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1099.965998] RIP: 0033:0x7f39109202ab [ 1099.969948] Code: Bad RIP value. [ 1099.973315] RSP: 002b:00007ffc2520b1a0 EFLAGS: 00000246 ORIG_RAX: 0000000000000038 [ 1099.999227] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f39109202ab [ 1100.006519] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011 [ 1100.027374] RBP: 0000000000000001 R08: 0000000000000000 R09: 0000555556b66400 [ 1100.039281] R10: 0000555556b666d0 R11: 0000000000000246 R12: 0000000000000001 [ 1100.046565] R13: 0000000000000000 R14: 0000000000000001 R15: 00007ffc2520b280 [ 1100.055068] INFO: task syz-executor.2:387 blocked for more than 140 seconds. [ 1100.062945] Not tainted 4.19.211-syzkaller #0 [ 1100.067959] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1100.077026] syz-executor.2 D28648 387 8137 0x80000000 [ 1100.083884] Call Trace: [ 1100.086486] __schedule+0x887/0x2040 [ 1100.092661] ? io_schedule_timeout+0x140/0x140 [ 1100.097255] ? mark_held_locks+0xa6/0xf0 [ 1100.102330] ? rwsem_down_read_failed+0x20a/0x390 [ 1100.107178] schedule+0x8d/0x1b0 [ 1100.111945] rwsem_down_read_failed+0x20a/0x390 [ 1100.116637] ? rt_mutex_futex_unlock+0xf0/0xf0 [ 1100.122220] ? HARDIRQ_verbose+0x10/0x10 [ 1100.126296] ? lock_downgrade+0x720/0x720 [ 1100.131696] call_rwsem_down_read_failed+0x14/0x30 [ 1100.136628] down_read+0x44/0x80 [ 1100.140991] ? do_exit+0x6e4/0x2be0 [ 1100.144619] do_exit+0x6e4/0x2be0 [ 1100.148079] ? try_to_wake_up+0x733/0x1050 [ 1100.153739] ? do_group_exit+0x2a1/0x310 [ 1100.157809] ? mm_update_next_owner+0x650/0x650 [ 1100.163542] ? check_preemption_disabled+0x41/0x280 [ 1100.168565] ? lock_downgrade+0x720/0x720 [ 1100.173752] ? kick_process+0xe4/0x170 [ 1100.177648] ? _raw_spin_unlock_irq+0x24/0x80 [ 1100.183151] do_group_exit+0x125/0x310 [ 1100.187050] __x64_sys_exit_group+0x3a/0x50 [ 1100.192874] do_syscall_64+0xf9/0x620 [ 1100.196696] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1100.202903] RIP: 0033:0x7f23222575a9 [ 1100.206626] Code: Bad RIP value. [ 1100.211041] RSP: 002b:00007ffc261ac5b8 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7 [ 1100.218754] RAX: ffffffffffffffda RBX: 000000000000001e RCX: 00007f23222575a9 [ 1100.227135] RDX: 00007f232220937b RSI: ffffffffffffffb8 RDI: 0000000000000000 [ 1100.235073] RBP: 0000000000000000 R08: 000000f49bcf7440 R09: 0000000000000000 [ 1100.242968] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001 [ 1100.250962] R13: 0000000000000000 R14: 0000000000000001 R15: 00007ffc261ac6a0 [ 1100.258312] INFO: task syz-executor.2:390 blocked for more than 140 seconds. [ 1100.266580] Not tainted 4.19.211-syzkaller #0 [ 1100.272706] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1100.282664] syz-executor.2 D28176 390 8137 0x80000000 [ 1100.288313] Call Trace: [ 1100.291891] __schedule+0x887/0x2040 [ 1100.295619] ? io_schedule_timeout+0x140/0x140 [ 1100.301255] ? mark_held_locks+0xa6/0xf0 [ 1100.305332] ? rwsem_down_read_failed+0x20a/0x390 [ 1100.315123] schedule+0x8d/0x1b0 [ 1100.318508] rwsem_down_read_failed+0x20a/0x390 [ 1100.337330] ? rt_mutex_futex_unlock+0xf0/0xf0 [ 1100.342031] ? HARDIRQ_verbose+0x10/0x10 [ 1100.346333] ? lock_downgrade+0x720/0x720 [ 1100.359167] call_rwsem_down_read_failed+0x14/0x30 [ 1100.364122] down_read+0x44/0x80 [ 1100.367495] ? do_exit+0x6e4/0x2be0 [ 1100.386583] do_exit+0x6e4/0x2be0 [ 1100.397545] ? HARDIRQ_verbose+0x10/0x10 [ 1100.408881] ? mm_update_next_owner+0x650/0x650 [ 1100.413681] ? get_signal+0x388/0x1f70 [ 1100.417861] ? lock_downgrade+0x720/0x720 [ 1100.436536] ? lock_acquire+0x170/0x3c0 [ 1100.440815] do_group_exit+0x125/0x310 [ 1100.444718] get_signal+0x3f2/0x1f70 [ 1100.448436] ? vm_mmap_pgoff+0x152/0x200 [ 1100.452615] do_signal+0x8f/0x1670 [ 1100.456338] ? call_rwsem_down_write_failed_killable+0x13/0x20 [ 1100.462392] ? setup_sigcontext+0x820/0x820 [ 1100.466923] ? down_write_killable+0x9a/0xb0 [ 1100.471445] ? vm_mmap_pgoff+0xe8/0x200 [ 1100.475623] ? vma_is_stack_for_current+0xc0/0xc0 [ 1100.494917] ? do_dup2+0x450/0x450 [ 1100.498488] ? fput+0x2b/0x190 [ 1100.509237] ? ksys_mmap_pgoff+0x2ad/0x5a0 [ 1100.513494] ? exit_to_usermode_loop+0x36/0x2a0 [ 1100.518165] exit_to_usermode_loop+0x204/0x2a0 [ 1100.533605] do_syscall_64+0x538/0x620 [ 1100.537523] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1100.557945] RIP: 0033:0x7f23222575a9 [ 1100.563432] Code: Bad RIP value. [ 1100.566822] RSP: 002b:00007f2320bcb168 EFLAGS: 00000246 ORIG_RAX: 0000000000000009 [ 1100.588954] RAX: fffffffffffffffc RBX: 00007f2322378f80 RCX: 00007f23222575a9 [ 1100.599210] RDX: 0000000000000000 RSI: 0000000000002000 RDI: 0000000020341000 [ 1100.606494] RBP: 00007f23222b2580 R08: 0000000000000004 R09: 0000000000000000 [ 1100.613832] R10: 0000000000000011 R11: 0000000000000246 R12: 0000000000000000 [ 1100.635072] R13: 00007ffc261ac37f R14: 00007f2320bcb300 R15: 0000000000022000 [ 1100.649399] INFO: task syz-executor.2:393 blocked for more than 140 seconds. [ 1100.656591] Not tainted 4.19.211-syzkaller #0 [ 1100.661996] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1100.670299] syz-executor.2 D27152 393 8137 0x80000000 [ 1100.675939] Call Trace: [ 1100.678534] __schedule+0x887/0x2040 [ 1100.683005] ? io_schedule_timeout+0x140/0x140 [ 1100.687611] ? mark_held_locks+0xa6/0xf0 [ 1100.692604] ? rwsem_down_read_failed+0x20a/0x390 [ 1100.697458] schedule+0x8d/0x1b0 [ 1100.701136] rwsem_down_read_failed+0x20a/0x390 [ 1100.705818] ? rt_mutex_futex_unlock+0xf0/0xf0 [ 1100.710740] ? HARDIRQ_verbose+0x10/0x10 [ 1100.714817] ? lock_downgrade+0x720/0x720 [ 1100.718975] call_rwsem_down_read_failed+0x14/0x30 [ 1100.724368] down_read+0x44/0x80 [ 1100.727747] ? do_exit+0x6e4/0x2be0 [ 1100.731696] do_exit+0x6e4/0x2be0 [ 1100.735162] ? HARDIRQ_verbose+0x10/0x10 [ 1100.739569] ? mm_update_next_owner+0x650/0x650 [ 1100.744241] ? get_signal+0x388/0x1f70 [ 1100.748132] ? lock_downgrade+0x720/0x720 [ 1100.759140] ? lock_acquire+0x170/0x3c0 [ 1100.763149] do_group_exit+0x125/0x310 [ 1100.767040] get_signal+0x3f2/0x1f70 [ 1100.783343] ? trace_hardirqs_on_thunk+0x1a/0x1c [ 1100.788127] ? trace_hardirqs_on_thunk+0x1a/0x1c [ 1100.807252] do_signal+0x8f/0x1670 [ 1100.811208] ? trace_hardirqs_on_thunk+0x1a/0x1c [ 1100.815978] ? lockdep_hardirqs_on+0x3a8/0x5c0 [ 1100.834738] ? setup_sigcontext+0x820/0x820 [ 1100.839440] ? rcu_nmi_exit+0xb3/0x180 [ 1100.843349] ? retint_kernel+0x2d/0x2d [ 1100.847238] ? trace_hardirqs_on_thunk+0x1a/0x1c [ 1100.866257] ? __se_sys_futex+0x28f/0x3b0 [ 1100.876636] ? __se_sys_futex+0x298/0x3b0 [ 1100.889163] ? do_futex+0x1880/0x1880 [ 1100.892986] ? exit_to_usermode_loop+0x36/0x2a0 [ 1100.898243] exit_to_usermode_loop+0x204/0x2a0 [ 1100.917672] do_syscall_64+0x538/0x620 [ 1100.921960] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1100.927155] RIP: 0033:0x7f23222575a9 [ 1100.931238] Code: Bad RIP value. [ 1100.934608] RSP: 002b:00007f2320baa218 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca [ 1100.942666] RAX: fffffffffffffe00 RBX: 00007f2322379058 RCX: 00007f23222575a9 [ 1100.951562] RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f2322379058 [ 1100.958838] RBP: 00007f2322379050 R08: 0000000000000000 R09: 0000000000000000 [ 1100.979309] R10: 0000000000000000 R11: 0000000000000246 R12: 00007f232237905c [ 1100.986583] R13: 00007ffc261ac37f R14: 00007f2320baa300 R15: 0000000000022000 [ 1101.019124] INFO: task syz-executor.2:396 blocked for more than 140 seconds. [ 1101.026331] Not tainted 4.19.211-syzkaller #0 [ 1101.031699] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1101.039961] syz-executor.2 D29760 396 8137 0x80000000 [ 1101.045603] Call Trace: [ 1101.048194] __schedule+0x887/0x2040 [ 1101.052322] ? io_schedule_timeout+0x140/0x140 [ 1101.056920] ? mark_held_locks+0xa6/0xf0 [ 1101.061309] ? rwsem_down_read_failed+0x20a/0x390 [ 1101.066161] schedule+0x8d/0x1b0 [ 1101.069877] rwsem_down_read_failed+0x20a/0x390 [ 1101.074560] ? rt_mutex_futex_unlock+0xf0/0xf0 [ 1101.085876] ? HARDIRQ_verbose+0x10/0x10 [ 1101.099215] ? lock_downgrade+0x720/0x720 [ 1101.103568] call_rwsem_down_read_failed+0x14/0x30 [ 1101.108507] down_read+0x44/0x80 [ 1101.119185] ? do_exit+0x6e4/0x2be0 [ 1101.122829] do_exit+0x6e4/0x2be0 [ 1101.126286] ? HARDIRQ_verbose+0x10/0x10 [ 1101.145802] ? mm_update_next_owner+0x650/0x650 [ 1101.158259] ? get_signal+0x388/0x1f70 [ 1101.169266] ? lock_downgrade+0x720/0x720 [ 1101.173434] ? lock_acquire+0x170/0x3c0 [ 1101.177424] do_group_exit+0x125/0x310 [ 1101.196823] get_signal+0x3f2/0x1f70 [ 1101.207412] ? mark_held_locks+0xf0/0xf0 [ 1101.225965] do_signal+0x8f/0x1670 [ 1101.237305] ? setup_sigcontext+0x820/0x820 [ 1101.249192] ? check_preemption_disabled+0x41/0x280 [ 1101.254251] ? __fget+0x356/0x510 [ 1101.257717] ? __se_sys_futex+0x28f/0x3b0 [ 1101.279222] ? __se_sys_futex+0x298/0x3b0 [ 1101.283413] ? do_futex+0x1880/0x1880 [ 1101.287217] ? exit_to_usermode_loop+0x36/0x2a0 [ 1101.307441] exit_to_usermode_loop+0x204/0x2a0 [ 1101.318060] do_syscall_64+0x538/0x620 [ 1101.329178] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1101.334394] RIP: 0033:0x7f23222575a9 [ 1101.338109] Code: Bad RIP value. [ 1101.356965] RSP: 002b:00007f2320b89218 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca [ 1101.379123] RAX: fffffffffffffe00 RBX: 00007f2322379128 RCX: 00007f23222575a9 [ 1101.386431] RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f2322379128 [ 1101.394244] RBP: 00007f2322379120 R08: 0000000000000000 R09: 0000000000000000 [ 1101.402353] R10: 0000000000000000 R11: 0000000000000246 R12: 00007f232237912c [ 1101.410620] R13: 00007ffc261ac37f R14: 00007f2320b89300 R15: 0000000000022000 [ 1101.417950] INFO: task syz-executor.0:397 blocked for more than 140 seconds. [ 1101.425632] Not tainted 4.19.211-syzkaller #0 [ 1101.439327] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1101.447307] syz-executor.0 D28648 397 8136 0x00000004 [ 1101.466569] Call Trace: [ 1101.475365] __schedule+0x887/0x2040 [ 1101.487685] ? io_schedule_timeout+0x140/0x140 [ 1101.492707] ? lock_downgrade+0x720/0x720 [ 1101.496877] ? __mutex_lock+0x418/0x1190 [ 1101.509122] schedule+0x8d/0x1b0 [ 1101.519661] schedule_preempt_disabled+0xf/0x20 [ 1101.524373] __mutex_lock+0x5f0/0x1190 [ 1101.528281] ? perf_trace_destroy+0x23/0xf0 [ 1101.534094] ? mutex_trylock+0x1a0/0x1a0 [ 1101.538183] ? wait_for_completion_io+0x10/0x10 [ 1101.544133] ? perf_event_release_kernel+0x21c/0xcd0 [ 1101.550090] perf_trace_destroy+0x23/0xf0 [ 1101.554261] ? perf_tp_event_init+0x120/0x120 [ 1101.558771] _free_event+0x32c/0x1150 [ 1101.564324] ? ring_buffer_attach+0x630/0x630 [ 1101.568845] ? _raw_spin_unlock_irq+0x24/0x80 [ 1101.574637] perf_event_release_kernel+0x6d9/0xcd0 [ 1101.580382] ? inherit_task_group.isra.0+0x360/0x360 [ 1101.585506] ? perf_event_release_kernel+0xcd0/0xcd0 [ 1101.597657] perf_release+0x33/0x40 [ 1101.602412] __fput+0x2ce/0x890 [ 1101.605734] task_work_run+0x148/0x1c0 [ 1101.612926] exit_to_usermode_loop+0x251/0x2a0 [ 1101.617530] do_syscall_64+0x538/0x620 [ 1101.622665] entry_SYSCALL_64_after_hwframe+0x49/0xbe [ 1101.627860] RIP: 0033:0x7f4f7ea6437b [ 1101.633016] Code: Bad RIP value. [ 1101.636395] RSP: 002b:00007ffc97113bc0 EFLAGS: 00000293 ORIG_RAX: 0000000000000003 [ 1101.645321] RAX: 0000000000000000 RBX: 0000000000000004 RCX: 00007f4f7ea6437b [ 1101.653415] RDX: 0000001b2fc20000 RSI: 0000001b2fc225cc RDI: 0000000000000003 [ 1101.661522] RBP: 00007f4f7ebd5980 R08: 0000000000000000 R09: 000000003253460c [ 1101.668925] R10: 0018d544a863de82 R11: 0000000000000293 R12: 00000000000e8618 [ 1101.677584] R13: 00007ffc97113cc0 R14: 00007ffc97113ce0 R15: 0000000000000032 [ 1101.685814] [ 1101.685814] Showing all locks held in the system: [ 1101.693726] 1 lock held by khungtaskd/1557: [ 1101.698049] #0: 000000000719005d (rcu_read_lock){....}, at: debug_show_all_locks+0x53/0x265 [ 1101.708118] 1 lock held by systemd-udevd/4698: [ 1101.715636] #0: 00000000d62925d4 (&dup_mmap_sem){++++}, at: copy_process.part.0+0x2bb3/0x8260 [ 1101.725283] 1 lock held by in:imklog/7799: [ 1101.733366] #0: 00000000feff700e (&f->f_pos_lock){+.+.}, at: __fdget_pos+0x26f/0x310 [ 1101.747026] 2 locks held by agetty/8026: [ 1101.759158] #0: 0000000056907e2d (&tty->ldisc_sem){++++}, at: tty_ldisc_ref_wait+0x22/0x80 [ 1101.767676] #1: 00000000d91e7fa5 (&ldata->atomic_read_lock){+.+.}, at: n_tty_read+0x217/0x1950 [ 1101.792678] 1 lock held by syz-executor.1/8138: [ 1101.797353] #0: 00000000d62925d4 (&dup_mmap_sem){++++}, at: copy_process.part.0+0x2bb3/0x8260 [ 1101.819434] 1 lock held by syz-executor.5/8139: [ 1101.824101] #0: 00000000d62925d4 (&dup_mmap_sem){++++}, at: copy_process.part.0+0x2bb3/0x8260 [ 1101.847571] 1 lock held by syz-executor.4/8141: [ 1101.853153] #0: 00000000d62925d4 (&dup_mmap_sem){++++}, at: copy_process.part.0+0x2bb3/0x8260 [ 1101.876503] 1 lock held by syz-executor.3/16639: [ 1101.882207] #0: 00000000d62925d4 (&dup_mmap_sem){++++}, at: copy_process.part.0+0x2bb3/0x8260 [ 1101.905743] 1 lock held by syz-executor.2/387: [ 1101.911204] #0: 00000000a63157a4 (&mm->mmap_sem){++++}, at: do_exit+0x6e4/0x2be0 [ 1101.933880] 1 lock held by syz-executor.2/390: [ 1101.938470] #0: 00000000a63157a4 (&mm->mmap_sem){++++}, at: do_exit+0x6e4/0x2be0 [ 1101.949233] 1 lock held by syz-executor.2/393: [ 1101.953822] #0: 00000000a63157a4 (&mm->mmap_sem){++++}, at: do_exit+0x6e4/0x2be0 [ 1101.979037] 1 lock held by syz-executor.2/396: [ 1101.983630] #0: 00000000a63157a4 (&mm->mmap_sem){++++}, at: do_exit+0x6e4/0x2be0 [ 1101.991727] 2 locks held by syz-executor.2/398: [ 1101.996400] 1 lock held by syz-executor.0/397: [ 1102.001374] #0: 00000000b5c59c47 (event_mutex){+.+.}, at: perf_trace_destroy+0x23/0xf0 [ 1102.009853] 5 locks held by syz-executor.0/400: [ 1102.014940] #0: 0000000097175d61 (&pmus_srcu){....}, at: perf_event_alloc.part.0+0xe6c/0x2eb0 [ 1102.024768] #1: 00000000b5c59c47 (event_mutex){+.+.}, at: perf_uprobe_init+0x15a/0x200 [ 1102.033341] #2: 00000000d1b978d6 (&uprobe->register_rwsem){+.+.}, at: uprobe_register+0x34b/0x730 [ 1102.042796] #3: 00000000d62925d4 (&dup_mmap_sem){++++}, at: percpu_down_write+0x62/0x3f0 [ 1102.051420] #4: 00000000a63157a4 (&mm->mmap_sem){++++}, at: register_for_each_vma+0x6bb/0xe40 [ 1102.060479] 1 lock held by syz-executor.2/413: [ 1102.065054] #0: 00000000d62925d4 (&dup_mmap_sem){++++}, at: copy_process.part.0+0x2bb3/0x8260 [ 1102.074126] 1 lock held by syz-executor.0/414: [ 1102.078711] #0: 00000000d62925d4 (&dup_mmap_sem){++++}, at: copy_process.part.0+0x2bb3/0x8260 [ 1102.087847] [ 1102.089797] ============================================= [ 1102.089797] [ 1102.096814] NMI backtrace for cpu 0 [ 1102.100592] CPU: 0 PID: 1557 Comm: khungtaskd Not tainted 4.19.211-syzkaller #0 [ 1102.108036] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/22/2022 [ 1102.117387] Call Trace: [ 1102.119974] dump_stack+0x1fc/0x2ef [ 1102.123604] nmi_cpu_backtrace.cold+0x63/0xa2 [ 1102.128098] ? lapic_can_unplug_cpu+0x80/0x80 [ 1102.132604] nmi_trigger_cpumask_backtrace+0x1a6/0x1f0 [ 1102.137881] watchdog+0x991/0xe60 [ 1102.141338] ? reset_hung_task_detector+0x30/0x30 [ 1102.146179] kthread+0x33f/0x460 [ 1102.149540] ? kthread_park+0x180/0x180 [ 1102.153516] ret_from_fork+0x24/0x30 [ 1102.158026] Sending NMI from CPU 0 to CPUs 1: [ 1102.163398] NMI backtrace for cpu 1 [ 1102.163404] CPU: 1 PID: 7 Comm: kworker/u4:0 Not tainted 4.19.211-syzkaller #0 [ 1102.163411] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/22/2022 [ 1102.163415] Workqueue: phy2 ieee80211_iface_work [ 1102.163421] RIP: 0010:write_comp_data+0xf/0x70 [ 1102.163432] Code: 8b 11 48 83 c2 01 48 39 d0 76 07 48 89 34 d1 48 89 11 c3 0f 1f 84 00 00 00 00 00 49 89 f1 49 89 fa 65 48 8b 34 25 c0 df 01 00 <65> 8b 05 7a 59 9f 7e a9 00 01 1f 00 75 4f 8b 86 60 13 00 00 83 f8 [ 1102.163436] RSP: 0018:ffff8880b5a472c8 EFLAGS: 00000246 [ 1102.163444] RAX: dffffc0000000000 RBX: ffff8880b5a47510 RCX: ffffffff87813da5 [ 1102.163449] RDX: ffff8880b13cf200 RSI: ffff8880b5a361c0 RDI: 0000000000000007 [ 1102.163454] RBP: ffff8880a8e61428 R08: 0000000000000000 R09: 0000000000000000 [ 1102.163459] R10: 0000000000000007 R11: 000000004470b61e R12: dffffc0000000000 [ 1102.163464] R13: ffff8880b28b0180 R14: ffff8880b13cf200 R15: ffffed1016b48ea2 [ 1102.163470] FS: 0000000000000000(0000) GS:ffff8880ba100000(0000) knlGS:0000000000000000 [ 1102.163474] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 1102.163480] CR2: 00007f5e89618000 CR3: 00000000a45a8000 CR4: 00000000003406e0 [ 1102.163485] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 1102.163490] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 1102.163493] Call Trace: [ 1102.163496] cmp_bss.part.0+0x85/0x870 [ 1102.163500] ? lock_acquire+0x170/0x3c0 [ 1102.163504] rb_find_bss.isra.0+0x158/0x1d0 [ 1102.163507] cfg80211_bss_update+0x123/0x2590 [ 1102.163511] ? rcu_read_lock_sched_held+0x16c/0x1d0 [ 1102.163515] ? __kmalloc+0x38e/0x3c0 [ 1102.163519] ? cfg80211_inform_bss_frame_data+0x200/0xeb0 [ 1102.163523] cfg80211_inform_bss_frame_data+0x69c/0xeb0 [ 1102.163527] ? cfg80211_inform_bss_data+0x9b0/0x9b0 [ 1102.163531] ? __lock_acquire+0x6de/0x3ff0 [ 1102.163535] ? lock_downgrade+0x720/0x720 [ 1102.163539] ? check_preemption_disabled+0x41/0x280 [ 1102.163543] ? check_preemption_disabled+0x41/0x280 [ 1102.163547] ieee80211_bss_info_update+0x42d/0x1800 [ 1102.163550] ? ieee80211_rx_bss_put+0x50/0x50 [ 1102.163554] ? check_preemption_disabled+0x41/0x280 [ 1102.163559] ieee80211_rx_mgmt_probe_beacon+0xb4f/0x15c0 [ 1102.163564] ? ieee80211_ibss_process_chanswitch.constprop.0+0xb90/0xb90 [ 1102.163568] ? perf_trace_lock_acquire+0xef/0x530 [ 1102.163572] ? __save_stack_trace+0x72/0x190 [ 1102.163575] ? deref_stack_reg+0x134/0x1d0 [ 1102.163579] ? HARDIRQ_verbose+0x10/0x10 [ 1102.163583] ? __lock_acquire+0x6de/0x3ff0 [ 1102.163586] ? __lock_acquire+0x6de/0x3ff0 [ 1102.163591] ieee80211_ibss_rx_queued_mgmt+0xe27/0x18b0 [ 1102.163595] ? ieee80211_ibss_rx_no_sta+0x810/0x810 [ 1102.163598] ? mark_held_locks+0xf0/0xf0 [ 1102.163602] ? perf_trace_lock_acquire+0xef/0x530 [ 1102.163606] ? HARDIRQ_verbose+0x10/0x10 [ 1102.163610] ? HARDIRQ_verbose+0x10/0x10 [ 1102.163613] ? mark_held_locks+0xf0/0xf0 [ 1102.163617] ? skb_dequeue+0x125/0x180 [ 1102.163620] ? mark_held_locks+0xa6/0xf0 [ 1102.163624] ? _raw_spin_unlock_irqrestore+0x79/0xe0 [ 1102.163628] ? lockdep_hardirqs_on+0x3a8/0x5c0 [ 1102.163632] ? _raw_spin_unlock_irqrestore+0x66/0xe0 [ 1102.163636] ieee80211_iface_work+0x5c4/0x8a0 [ 1102.163640] process_one_work+0x864/0x1570 [ 1102.163644] ? pwq_dec_nr_in_flight+0x2d0/0x2d0 [ 1102.163647] worker_thread+0x64c/0x1130 [ 1102.163651] ? process_one_work+0x1570/0x1570 [ 1102.163654] kthread+0x33f/0x460 [ 1102.163658] ? kthread_park+0x180/0x180 [ 1102.163661] ret_from_fork+0x24/0x30 [ 1102.165379] Kernel panic - not syncing: hung_task: blocked tasks [ 1102.497516] CPU: 0 PID: 1557 Comm: khungtaskd Not tainted 4.19.211-syzkaller #0 [ 1102.504962] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/22/2022 [ 1102.514311] Call Trace: [ 1102.516904] dump_stack+0x1fc/0x2ef [ 1102.520538] panic+0x26a/0x50e [ 1102.523730] ? __warn_printk+0xf3/0xf3 [ 1102.527623] ? lapic_can_unplug_cpu+0x80/0x80 [ 1102.532114] ? ___preempt_schedule+0x16/0x18 [ 1102.536527] ? watchdog+0x991/0xe60 [ 1102.540152] ? nmi_trigger_cpumask_backtrace+0x15e/0x1f0 [ 1102.545609] watchdog+0x9a2/0xe60 [ 1102.549068] ? reset_hung_task_detector+0x30/0x30 [ 1102.553913] kthread+0x33f/0x460 [ 1102.557276] ? kthread_park+0x180/0x180 [ 1102.561252] ret_from_fork+0x24/0x30 [ 1102.565365] Kernel Offset: disabled [ 1102.568994] Rebooting in 86400 seconds..