ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000", 0x40440, 0xfffe0}, {&(0x7f000007da00)="eb52904e5446532020202000020800000000000000f8000000000000000000000000000080008000ff0f0000000000000400000000000000ff00000000000000f6000000010000003daaf55af9830909000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f74206120626f6f7461626c65206469736b2e20506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0, 0x1ffe00}, {&(0x7f000007db00)="00000000000000000000000000000000000000000000000000000000000055aa", 0x20, 0x1fffe0}], 0x0, &(0x7f000007dc00)) 12:51:43 executing program 3: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8a}, 0x0) r0 = getpid() sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) sched_setattr(r0, &(0x7f0000000240)={0x38, 0x2, 0x0, 0x0, 0x5}, 0x0) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) ioctl$F2FS_IOC_MOVE_RANGE(r2, 0xc020f509, 0x0) socket$can_j1939(0x1d, 0x2, 0x7) r3 = socket$nl_generic(0x10, 0x3, 0x10) fstat(r3, &(0x7f0000000080)={0x0, 0x0, 0x0, 0x0, 0x0}) setuid(r4) ioprio_get$uid(0x3, r4) r5 = socket$netlink(0x10, 0x3, 0x0) sendmmsg(r5, 0x0, 0x0, 0x0) sendmsg$unix(0xffffffffffffffff, 0x0, 0x0) 12:51:43 executing program 5: perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x1}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) keyctl$unlink(0x9, 0x0, 0xfffffffffffffffb) r0 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) r1 = open(&(0x7f0000000080)='./file0\x00', 0x581982, 0x2) perf_event_open$cgroup(0x0, r1, 0xd, r1, 0x8) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) mmap(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x1000005, 0x10, r0, 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000000)='B', 0x1}], 0x1, 0x81804, 0x0) r3 = add_key$fscrypt_v1(&(0x7f0000000000), &(0x7f0000000040)={'fscrypt:', @desc1}, &(0x7f0000000100)={0x0, "e91717311ea60d8ef8fbbb68ece687299ba055bfd2942da41bb2c770df60299021fb413a1e3db936c2096a74bfe913004e4b842b852f1b8bac6922ad52b2e050"}, 0x48, 0xfffffffffffffffe) r4 = add_key$user(&(0x7f0000000200), &(0x7f0000000300)={'syz', 0x0}, &(0x7f0000000240)="f575dee69d8b7f1db5628a061ef2f66c39310a3b823f378a11220bfc375b812dfc397b82bed530682a060be7eec083533c03b6f8a21a67eaecbed5d07d5d39ccb397ae64152661324c540693098a0e9e7ceaa2baf235789db1417d2d8dd27a0a2337a59e730ad4c786d847d371dade9fcbb375cbabb8baad1f", 0x79, 0xfffffffffffffffe) r5 = add_key$user(&(0x7f00000003c0), &(0x7f0000000440), &(0x7f00000000c0), 0xcd, 0xfffffffffffffffd) keyctl$dh_compute(0x17, &(0x7f0000000140)={r4, r5, r4}, &(0x7f00000000c0)=""/83, 0xfffffffffffffe4f, 0x0) keyctl$read(0xb, r4, &(0x7f0000000280)=""/246, 0xf6) keyctl$unlink(0x9, 0x0, r3) ioctl$LOOP_CHANGE_FD(r0, 0x4c00, r2) add_key$fscrypt_v1(&(0x7f0000000000), &(0x7f0000000040)={'fscrypt:', @desc1}, &(0x7f0000000100)={0x0, "e91717311ea60d8ef8fbbb68ece687299ba055bfd2942da41bb2c770df60299021fb413a1e3db936c2096a74bfe913004e4b842b852f1b8bac6922ad52b2e050"}, 0x48, 0xfffffffffffffffe) ioctl$LOOP_SET_DIRECT_IO(r0, 0x4c08, 0x20) sendfile(r0, r0, 0x0, 0x24002da8) [ 651.580708][ T4053] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 651.663228][ T4053] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready 12:51:44 executing program 2: socketpair$tipc(0x1e, 0x5, 0x0, &(0x7f0000000e80)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r1, 0x8912, 0x400308) r2 = syz_init_net_socket$ax25(0x3, 0x3, 0x0) r3 = dup2(r2, r0) getsockopt$ax25_int(r3, 0x101, 0x2, &(0x7f0000000080), &(0x7f00000000c0)=0x4) [ 652.126507][ T4073] loop0: detected capacity change from 0 to 1036 12:51:44 executing program 0: perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x1}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) keyctl$unlink(0x9, 0x0, 0xfffffffffffffffb) r0 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) r1 = open(&(0x7f0000000080)='./file0\x00', 0x581982, 0x2) perf_event_open$cgroup(0x0, r1, 0xd, r1, 0x8) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) mmap(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x1000005, 0x10, r0, 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000000)='B', 0x1}], 0x1, 0x81804, 0x0) r3 = add_key$fscrypt_v1(&(0x7f0000000000), &(0x7f0000000040)={'fscrypt:', @desc1}, &(0x7f0000000100)={0x0, "e91717311ea60d8ef8fbbb68ece687299ba055bfd2942da41bb2c770df60299021fb413a1e3db936c2096a74bfe913004e4b842b852f1b8bac6922ad52b2e050"}, 0x48, 0xfffffffffffffffe) r4 = add_key$user(&(0x7f0000000200), &(0x7f0000000300)={'syz', 0x0}, &(0x7f0000000240)="f575dee69d8b7f1db5628a061ef2f66c39310a3b823f378a11220bfc375b812dfc397b82bed530682a060be7eec083533c03b6f8a21a67eaecbed5d07d5d39ccb397ae64152661324c540693098a0e9e7ceaa2baf235789db1417d2d8dd27a0a2337a59e730ad4c786d847d371dade9fcbb375cbabb8baad1f", 0x79, 0xfffffffffffffffe) r5 = add_key$user(&(0x7f00000003c0), &(0x7f0000000440), &(0x7f00000000c0), 0xcd, 0xfffffffffffffffd) keyctl$dh_compute(0x17, &(0x7f0000000140)={r4, r5, r4}, &(0x7f00000000c0)=""/83, 0xfffffffffffffe4f, 0x0) keyctl$read(0xb, r4, &(0x7f0000000280)=""/246, 0xf6) keyctl$unlink(0x9, 0x0, r3) ioctl$LOOP_CHANGE_FD(r0, 0x4c00, r2) add_key$fscrypt_v1(&(0x7f0000000000), &(0x7f0000000040)={'fscrypt:', @desc1}, &(0x7f0000000100)={0x0, "e91717311ea60d8ef8fbbb68ece687299ba055bfd2942da41bb2c770df60299021fb413a1e3db936c2096a74bfe913004e4b842b852f1b8bac6922ad52b2e050"}, 0x48, 0xfffffffffffffffe) ioctl$LOOP_SET_DIRECT_IO(r0, 0x4c08, 0x20) sendfile(r0, r0, 0x0, 0x24002da8) 12:51:44 executing program 2: socketpair$tipc(0x1e, 0x5, 0x0, &(0x7f0000000e80)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r1, 0x8912, 0x400308) r2 = syz_init_net_socket$ax25(0x3, 0x3, 0x0) r3 = dup2(r2, r0) getsockopt$ax25_int(r3, 0x101, 0x2, &(0x7f0000000080), &(0x7f00000000c0)=0x4) 12:51:44 executing program 4: r0 = gettid() r1 = getpgid(0x0) prctl$PR_SET_PTRACER(0x59616d61, r1) clone(0x3102002dfe, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) rt_sigtimedwait(&(0x7f00000000c0), 0x0, &(0x7f0000000000)={0x0, 0x1c9c380}, 0x8) ptrace$setopts(0x4206, r0, 0x0, 0x200044) wait4(0x0, 0x0, 0x0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000180)={0x1, &(0x7f0000000040)=[{0x6}]}) newfstatat(0xffffffffffffff9c, 0x0, 0x0, 0x0) 12:51:44 executing program 1: perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x1}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) keyctl$unlink(0x9, 0x0, 0xfffffffffffffffb) r0 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) r1 = open(&(0x7f0000000080)='./file0\x00', 0x581982, 0x2) perf_event_open$cgroup(0x0, r1, 0xd, r1, 0x8) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) mmap(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x1000005, 0x10, r0, 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000000)='B', 0x1}], 0x1, 0x81804, 0x0) r3 = add_key$fscrypt_v1(&(0x7f0000000000), &(0x7f0000000040)={'fscrypt:', @desc1}, &(0x7f0000000100)={0x0, "e91717311ea60d8ef8fbbb68ece687299ba055bfd2942da41bb2c770df60299021fb413a1e3db936c2096a74bfe913004e4b842b852f1b8bac6922ad52b2e050"}, 0x48, 0xfffffffffffffffe) r4 = add_key$user(&(0x7f0000000200), &(0x7f0000000300)={'syz', 0x0}, &(0x7f0000000240)="f575dee69d8b7f1db5628a061ef2f66c39310a3b823f378a11220bfc375b812dfc397b82bed530682a060be7eec083533c03b6f8a21a67eaecbed5d07d5d39ccb397ae64152661324c540693098a0e9e7ceaa2baf235789db1417d2d8dd27a0a2337a59e730ad4c786d847d371dade9fcbb375cbabb8baad1f", 0x79, 0xfffffffffffffffe) r5 = add_key$user(&(0x7f00000003c0), &(0x7f0000000440), &(0x7f00000000c0), 0xcd, 0xfffffffffffffffd) keyctl$dh_compute(0x17, &(0x7f0000000140)={r4, r5, r4}, &(0x7f00000000c0)=""/83, 0xfffffffffffffe4f, 0x0) keyctl$read(0xb, r4, &(0x7f0000000280)=""/246, 0xf6) keyctl$unlink(0x9, 0x0, r3) ioctl$LOOP_CHANGE_FD(r0, 0x4c00, r2) add_key$fscrypt_v1(&(0x7f0000000000), &(0x7f0000000040)={'fscrypt:', @desc1}, &(0x7f0000000100)={0x0, "e91717311ea60d8ef8fbbb68ece687299ba055bfd2942da41bb2c770df60299021fb413a1e3db936c2096a74bfe913004e4b842b852f1b8bac6922ad52b2e050"}, 0x48, 0xfffffffffffffffe) ioctl$LOOP_SET_DIRECT_IO(r0, 0x4c08, 0x20) sendfile(r0, r0, 0x0, 0x24002da8) 12:51:44 executing program 4: r0 = gettid() r1 = getpgid(0x0) prctl$PR_SET_PTRACER(0x59616d61, r1) clone(0x3102002dfe, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) rt_sigtimedwait(&(0x7f00000000c0), 0x0, &(0x7f0000000000)={0x0, 0x1c9c380}, 0x8) ptrace$setopts(0x4206, r0, 0x0, 0x200044) wait4(0x0, 0x0, 0x0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000180)={0x1, &(0x7f0000000040)=[{0x6}]}) newfstatat(0xffffffffffffff9c, 0x0, 0x0, 0x0) [ 652.537883][ T36] audit: type=1326 audit(1630587104.921:235): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=4097 comm="syz-executor.4" exe="/root/syz-executor.4" sig=31 arch=c000003e syscall=231 compat=0 ip=0x4665f9 code=0x0 12:51:45 executing program 3: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8a}, 0x0) r0 = getpid() sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) sched_setattr(r0, &(0x7f0000000240)={0x38, 0x2, 0x0, 0x0, 0x5}, 0x0) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) ioctl$F2FS_IOC_MOVE_RANGE(r2, 0xc020f509, 0x0) socket$can_j1939(0x1d, 0x2, 0x7) r3 = socket$nl_generic(0x10, 0x3, 0x10) fstat(r3, &(0x7f0000000080)={0x0, 0x0, 0x0, 0x0, 0x0}) setuid(r4) ioprio_get$uid(0x3, r4) r5 = socket$netlink(0x10, 0x3, 0x0) sendmmsg(r5, 0x0, 0x0, 0x0) sendmsg$unix(0xffffffffffffffff, 0x0, 0x0) 12:51:45 executing program 4: r0 = gettid() r1 = getpgid(0x0) prctl$PR_SET_PTRACER(0x59616d61, r1) clone(0x3102002dfe, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) rt_sigtimedwait(&(0x7f00000000c0), 0x0, &(0x7f0000000000)={0x0, 0x1c9c380}, 0x8) ptrace$setopts(0x4206, r0, 0x0, 0x200044) wait4(0x0, 0x0, 0x0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000180)={0x1, &(0x7f0000000040)=[{0x6}]}) newfstatat(0xffffffffffffff9c, 0x0, 0x0, 0x0) 12:51:45 executing program 2: socketpair$tipc(0x1e, 0x5, 0x0, &(0x7f0000000e80)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r1, 0x8912, 0x400308) r2 = syz_init_net_socket$ax25(0x3, 0x3, 0x0) r3 = dup2(r2, r0) getsockopt$ax25_int(r3, 0x101, 0x2, &(0x7f0000000080), &(0x7f00000000c0)=0x4) [ 652.778388][ T4106] loop0: detected capacity change from 0 to 1036 12:51:45 executing program 5: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) [ 652.887843][ T36] audit: type=1326 audit(1630587105.261:236): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=4115 comm="syz-executor.4" exe="/root/syz-executor.4" sig=31 arch=c000003e syscall=202 compat=0 ip=0x4665f9 code=0x0 12:51:45 executing program 2: socketpair$tipc(0x1e, 0x5, 0x0, &(0x7f0000000e80)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r1, 0x8912, 0x400308) r2 = syz_init_net_socket$ax25(0x3, 0x3, 0x0) r3 = dup2(r2, r0) getsockopt$ax25_int(r3, 0x101, 0x2, &(0x7f0000000080), &(0x7f00000000c0)=0x4) 12:51:45 executing program 2: syz_init_net_socket$bt_l2cap(0x1f, 0x1, 0x0) 12:51:45 executing program 5: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) 12:51:45 executing program 2: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) 12:51:45 executing program 0: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) 12:51:46 executing program 1: close(0xffffffffffffffff) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TUNSETIFF(r0, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r1 = openat$tun(0xffffffffffffff9c, &(0x7f0000000300), 0x0, 0x0) ioctl$TUNSETIFF(r1, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) close(r1) 12:51:46 executing program 5: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) 12:51:46 executing program 4: r0 = gettid() r1 = getpgid(0x0) prctl$PR_SET_PTRACER(0x59616d61, r1) clone(0x3102002dfe, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) rt_sigtimedwait(&(0x7f00000000c0), 0x0, &(0x7f0000000000)={0x0, 0x1c9c380}, 0x8) ptrace$setopts(0x4206, r0, 0x0, 0x200044) wait4(0x0, 0x0, 0x0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000180)={0x1, &(0x7f0000000040)=[{0x6}]}) newfstatat(0xffffffffffffff9c, 0x0, 0x0, 0x0) 12:51:46 executing program 3: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8a}, 0x0) r0 = getpid() sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) sched_setattr(r0, &(0x7f0000000240)={0x38, 0x2, 0x0, 0x0, 0x5}, 0x0) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) ioctl$F2FS_IOC_MOVE_RANGE(r2, 0xc020f509, 0x0) socket$can_j1939(0x1d, 0x2, 0x7) r3 = socket$nl_generic(0x10, 0x3, 0x10) fstat(r3, &(0x7f0000000080)={0x0, 0x0, 0x0, 0x0, 0x0}) setuid(r4) ioprio_get$uid(0x3, r4) r5 = socket$netlink(0x10, 0x3, 0x0) sendmmsg(r5, 0x0, 0x0, 0x0) sendmsg$unix(0xffffffffffffffff, 0x0, 0x0) 12:51:46 executing program 2: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) 12:51:46 executing program 5: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) 12:51:46 executing program 0: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) 12:51:46 executing program 1: close(0xffffffffffffffff) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TUNSETIFF(r0, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r1 = openat$tun(0xffffffffffffff9c, &(0x7f0000000300), 0x0, 0x0) ioctl$TUNSETIFF(r1, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) close(r1) 12:51:46 executing program 4: close(0xffffffffffffffff) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TUNSETIFF(r0, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r1 = openat$tun(0xffffffffffffff9c, &(0x7f0000000300), 0x0, 0x0) ioctl$TUNSETIFF(r1, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) close(r1) 12:51:46 executing program 0: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) 12:51:46 executing program 5: socketpair$tipc(0x1e, 0x2, 0x0, &(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r0, 0x8912, 0x400308) prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x80000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r1 = gettid() write$sndseq(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0, 0x0, 0x0, 0x0, @tick, {}, {}, @ext={0x139, &(0x7f0000000180)="c4c69107787b049e6e859c2cbb8e4f91357af7a22899f339cbe0d6db21df2275cd990e0bce00bedc792bf9d41be758fb901e829dff0d7870634898ce82807e945a4ac7266d45154f350a8e3d44312496362bc044bd552dfd4730d8e9ffa9982780ba4d38d8181dbcead5ed83a75229ccf456b3139953c6346c75daa83ca4da23df239e908990f5a5a76f4533e417c27c314909ef50b40c720b4087b7e216b385f0a91568a6228678928778a1f30e1aad46495127888a8528508ee9902d7d6aef32dface09a6b027caf24da71ef4b658d8d0781ae65d0c4dc60fb9f28487eee4e2e1147a1d85f998ff0112faab754c3f8346597a5ad4d56c4ee76cd94074b61e94a300150efa8e84f42daf0a1a7d1f8fcae8caa2b39901bcd0b32fd3926d6f43449a586614ec409e35898db05dfc86bd6e9e55dd8e1519e7d02"}}], 0x1c) wait4(0x0, 0x0, 0x80000000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f0000000100)=[{&(0x7f0000000040)}, {&(0x7f0000000000)="0832f497d38350418e4bb321019511dc5df26e9a0b7ecb6974f527cc14538d1efb1ffe03284f6d33265be9c604b293f20e96beeb2aa4c457ac37a3a3f1ce8682500fcecd80", 0x45}], 0x2, 0x0) ptrace$setopts(0x4206, r1, 0x0, 0x0) tkill(r1, 0x17) ptrace$setregs(0xd, r1, 0x0, &(0x7f0000000080)) ptrace$cont(0x7, r1, 0x0, 0x0) 12:51:46 executing program 2: r0 = syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f0000000040)=0x9) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f00000000c0)='fd/3\x00') ioctl$TIOCSTI(r2, 0x5412, &(0x7f0000000080)=0x9) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) ioctl$TIOCSTI(r0, 0x5412, &(0x7f00000000c0)=0x7f) 12:51:46 executing program 0: r0 = socket(0x1d, 0x2, 0x6) getsockopt$inet_sctp_SCTP_SOCKOPT_CONNECTX3(r0, 0x6a, 0x4, 0x0, &(0x7f0000000400)) 12:51:46 executing program 1: close(0xffffffffffffffff) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TUNSETIFF(r0, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r1 = openat$tun(0xffffffffffffff9c, &(0x7f0000000300), 0x0, 0x0) ioctl$TUNSETIFF(r1, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) close(r1) 12:51:46 executing program 4: close(0xffffffffffffffff) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TUNSETIFF(r0, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r1 = openat$tun(0xffffffffffffff9c, &(0x7f0000000300), 0x0, 0x0) ioctl$TUNSETIFF(r1, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) close(r1) 12:51:47 executing program 3: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8a}, 0x0) r0 = getpid() sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) sched_setattr(r0, &(0x7f0000000240)={0x38, 0x2, 0x0, 0x0, 0x5}, 0x0) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) ioctl$F2FS_IOC_MOVE_RANGE(r2, 0xc020f509, 0x0) socket$can_j1939(0x1d, 0x2, 0x7) r3 = socket$nl_generic(0x10, 0x3, 0x10) fstat(r3, &(0x7f0000000080)={0x0, 0x0, 0x0, 0x0, 0x0}) setuid(r4) ioprio_get$uid(0x3, r4) r5 = socket$netlink(0x10, 0x3, 0x0) sendmmsg(r5, 0x0, 0x0, 0x0) sendmsg$unix(0xffffffffffffffff, 0x0, 0x0) 12:51:47 executing program 0: r0 = socket(0x1d, 0x2, 0x6) getsockopt$inet_sctp_SCTP_SOCKOPT_CONNECTX3(r0, 0x6a, 0x4, 0x0, &(0x7f0000000400)) 12:51:47 executing program 2: r0 = socket$inet6(0x10, 0x3, 0x0) sendto$inet6(r0, &(0x7f0000000200)="1c0000001200050f0c1000000049b23e9b200a00080001c000000001", 0x1c, 0x0, 0x0, 0x0) recvfrom$inet6(r0, 0x0, 0x0, 0x0, 0x0, 0x0) recvfrom$inet6(r0, &(0x7f0000000000)=""/114, 0xfffffffffffffd1b, 0x0, 0x0, 0x0) connect$inet6(0xffffffffffffffff, &(0x7f0000000000)={0xa, 0x0, 0xfffffffc, @private2}, 0xfffffffffffffff2) sendto$inet6(0xffffffffffffffff, &(0x7f0000000000)="900000002000", 0x6, 0x0, 0x0, 0x0) sendto$inet6(0xffffffffffffffff, &(0x7f0000000000)="58ad000010", 0x5, 0x0, 0x0, 0x0) sendmsg$IPSET_CMD_SAVE(0xffffffffffffffff, &(0x7f0000000300)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000280)=ANY=[@ANYBLOB="3c0000000806000000000000000000000000000000000000070000001900020073797a300000000005000100070000000900020073"], 0x3c}}, 0x0) accept4$unix(0xffffffffffffffff, &(0x7f0000000180), &(0x7f0000000240)=0x6e, 0x0) r1 = socket$inet6(0x10, 0x3, 0x0) sendto$inet6(r1, &(0x7f0000000000)='%', 0x10a73, 0x800, 0x0, 0x4b6ae4f95a5de35b) 12:51:47 executing program 4: close(0xffffffffffffffff) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TUNSETIFF(r0, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r1 = openat$tun(0xffffffffffffff9c, &(0x7f0000000300), 0x0, 0x0) ioctl$TUNSETIFF(r1, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) close(r1) 12:51:47 executing program 1: close(0xffffffffffffffff) perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TUNSETIFF(r0, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r1 = openat$tun(0xffffffffffffff9c, &(0x7f0000000300), 0x0, 0x0) ioctl$TUNSETIFF(r1, 0x400454ca, &(0x7f0000000040)={'syzkaller1\x00'}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) close(r1) 12:51:47 executing program 0: r0 = socket(0x1d, 0x2, 0x6) getsockopt$inet_sctp_SCTP_SOCKOPT_CONNECTX3(r0, 0x6a, 0x4, 0x0, &(0x7f0000000400)) [ 654.734922][ T4271] netlink: 41325 bytes leftover after parsing attributes in process `syz-executor.2'. [ 654.752959][ T4271] netlink: 'syz-executor.2': attribute type 2 has an invalid length. [ 654.979456][ T4271] netlink: 4 bytes leftover after parsing attributes in process `syz-executor.2'. 12:51:47 executing program 2: r0 = socket$inet6(0x10, 0x3, 0x0) sendto$inet6(r0, &(0x7f0000000200)="1c0000001200050f0c1000000049b23e9b200a00080001c000000001", 0x1c, 0x0, 0x0, 0x0) recvfrom$inet6(r0, 0x0, 0x0, 0x0, 0x0, 0x0) recvfrom$inet6(r0, &(0x7f0000000000)=""/114, 0xfffffffffffffd1b, 0x0, 0x0, 0x0) connect$inet6(0xffffffffffffffff, &(0x7f0000000000)={0xa, 0x0, 0xfffffffc, @private2}, 0xfffffffffffffff2) sendto$inet6(0xffffffffffffffff, &(0x7f0000000000)="900000002000", 0x6, 0x0, 0x0, 0x0) sendto$inet6(0xffffffffffffffff, &(0x7f0000000000)="58ad000010", 0x5, 0x0, 0x0, 0x0) sendmsg$IPSET_CMD_SAVE(0xffffffffffffffff, &(0x7f0000000300)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000280)=ANY=[@ANYBLOB="3c0000000806000000000000000000000000000000000000070000001900020073797a300000000005000100070000000900020073"], 0x3c}}, 0x0) accept4$unix(0xffffffffffffffff, &(0x7f0000000180), &(0x7f0000000240)=0x6e, 0x0) r1 = socket$inet6(0x10, 0x3, 0x0) sendto$inet6(r1, &(0x7f0000000000)='%', 0x10a73, 0x800, 0x0, 0x4b6ae4f95a5de35b) [ 655.186644][ T4313] netlink: 41325 bytes leftover after parsing attributes in process `syz-executor.2'. [ 655.200450][ T4313] netlink: 'syz-executor.2': attribute type 2 has an invalid length. [ 655.213348][ T4313] netlink: 4 bytes leftover after parsing attributes in process `syz-executor.2'. 12:51:49 executing program 4: r0 = bpf$MAP_CREATE(0x100000000000000, &(0x7f00000000c0)={0x12, 0x9, 0x8, 0x4}, 0x40) bpf$MAP_DELETE_ELEM(0x3, &(0x7f0000000000)={r0, &(0x7f0000000100)}, 0x20) 12:51:49 executing program 0: r0 = socket(0x1d, 0x2, 0x6) getsockopt$inet_sctp_SCTP_SOCKOPT_CONNECTX3(r0, 0x6a, 0x4, 0x0, &(0x7f0000000400)) 12:51:49 executing program 1: syz_read_part_table(0x0, 0x1, &(0x7f0000000000)=[{&(0x7f0000000100)="020105000016f2ffff00ff45ac0000ffffff81000000060000000000024000ffffff82000000e100000088770072003007000500000000000000008000da55aa", 0x40, 0x1c0}]) 12:51:49 executing program 2: r0 = socket$inet6(0x10, 0x3, 0x0) sendto$inet6(r0, &(0x7f0000000200)="1c0000001200050f0c1000000049b23e9b200a00080001c000000001", 0x1c, 0x0, 0x0, 0x0) recvfrom$inet6(r0, 0x0, 0x0, 0x0, 0x0, 0x0) recvfrom$inet6(r0, &(0x7f0000000000)=""/114, 0xfffffffffffffd1b, 0x0, 0x0, 0x0) connect$inet6(0xffffffffffffffff, &(0x7f0000000000)={0xa, 0x0, 0xfffffffc, @private2}, 0xfffffffffffffff2) sendto$inet6(0xffffffffffffffff, &(0x7f0000000000)="900000002000", 0x6, 0x0, 0x0, 0x0) sendto$inet6(0xffffffffffffffff, &(0x7f0000000000)="58ad000010", 0x5, 0x0, 0x0, 0x0) sendmsg$IPSET_CMD_SAVE(0xffffffffffffffff, &(0x7f0000000300)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000280)=ANY=[@ANYBLOB="3c0000000806000000000000000000000000000000000000070000001900020073797a300000000005000100070000000900020073"], 0x3c}}, 0x0) accept4$unix(0xffffffffffffffff, &(0x7f0000000180), &(0x7f0000000240)=0x6e, 0x0) r1 = socket$inet6(0x10, 0x3, 0x0) sendto$inet6(r1, &(0x7f0000000000)='%', 0x10a73, 0x800, 0x0, 0x4b6ae4f95a5de35b) 12:51:49 executing program 5: socketpair$tipc(0x1e, 0x2, 0x0, &(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r0, 0x8912, 0x400308) prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x80000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r1 = gettid() write$sndseq(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0, 0x0, 0x0, 0x0, @tick, {}, {}, @ext={0x139, &(0x7f0000000180)="c4c69107787b049e6e859c2cbb8e4f91357af7a22899f339cbe0d6db21df2275cd990e0bce00bedc792bf9d41be758fb901e829dff0d7870634898ce82807e945a4ac7266d45154f350a8e3d44312496362bc044bd552dfd4730d8e9ffa9982780ba4d38d8181dbcead5ed83a75229ccf456b3139953c6346c75daa83ca4da23df239e908990f5a5a76f4533e417c27c314909ef50b40c720b4087b7e216b385f0a91568a6228678928778a1f30e1aad46495127888a8528508ee9902d7d6aef32dface09a6b027caf24da71ef4b658d8d0781ae65d0c4dc60fb9f28487eee4e2e1147a1d85f998ff0112faab754c3f8346597a5ad4d56c4ee76cd94074b61e94a300150efa8e84f42daf0a1a7d1f8fcae8caa2b39901bcd0b32fd3926d6f43449a586614ec409e35898db05dfc86bd6e9e55dd8e1519e7d02"}}], 0x1c) wait4(0x0, 0x0, 0x80000000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f0000000100)=[{&(0x7f0000000040)}, {&(0x7f0000000000)="0832f497d38350418e4bb321019511dc5df26e9a0b7ecb6974f527cc14538d1efb1ffe03284f6d33265be9c604b293f20e96beeb2aa4c457ac37a3a3f1ce8682500fcecd80", 0x45}], 0x2, 0x0) ptrace$setopts(0x4206, r1, 0x0, 0x0) tkill(r1, 0x17) ptrace$setregs(0xd, r1, 0x0, &(0x7f0000000080)) ptrace$cont(0x7, r1, 0x0, 0x0) 12:51:49 executing program 3: r0 = fanotify_init(0x0, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) fanotify_mark(r0, 0x105, 0x4000103a, r1, 0x0) r2 = creat(&(0x7f00000001c0)='./file0\x00', 0x0) dup2(r2, r0) 12:51:49 executing program 0: r0 = openat$fb0(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) ioctl$FBIOBLANK(r0, 0x4611, 0x3) ioctl$FBIOBLANK(r0, 0x4611, 0x0) 12:51:49 executing program 4: r0 = bpf$MAP_CREATE(0x100000000000000, &(0x7f00000000c0)={0x12, 0x9, 0x8, 0x4}, 0x40) bpf$MAP_DELETE_ELEM(0x3, &(0x7f0000000000)={r0, &(0x7f0000000100)}, 0x20) [ 657.375623][ T4337] netlink: 41325 bytes leftover after parsing attributes in process `syz-executor.2'. [ 657.384536][ T4335] loop1: detected capacity change from 0 to 1 [ 657.396061][ T4337] netlink: 'syz-executor.2': attribute type 2 has an invalid length. 12:51:49 executing program 3: r0 = fanotify_init(0x0, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) fanotify_mark(r0, 0x105, 0x4000103a, r1, 0x0) r2 = creat(&(0x7f00000001c0)='./file0\x00', 0x0) dup2(r2, r0) [ 657.451897][ T4337] netlink: 4 bytes leftover after parsing attributes in process `syz-executor.2'. [ 657.462007][ T4347] loop1: p1 < > p2 p3 p4 < p5 p6 > [ 657.467386][ T4347] loop1: partition table partially beyond EOD, truncated 12:51:49 executing program 2: r0 = socket$inet6(0x10, 0x3, 0x0) sendto$inet6(r0, &(0x7f0000000200)="1c0000001200050f0c1000000049b23e9b200a00080001c000000001", 0x1c, 0x0, 0x0, 0x0) recvfrom$inet6(r0, 0x0, 0x0, 0x0, 0x0, 0x0) recvfrom$inet6(r0, &(0x7f0000000000)=""/114, 0xfffffffffffffd1b, 0x0, 0x0, 0x0) connect$inet6(0xffffffffffffffff, &(0x7f0000000000)={0xa, 0x0, 0xfffffffc, @private2}, 0xfffffffffffffff2) sendto$inet6(0xffffffffffffffff, &(0x7f0000000000)="900000002000", 0x6, 0x0, 0x0, 0x0) sendto$inet6(0xffffffffffffffff, &(0x7f0000000000)="58ad000010", 0x5, 0x0, 0x0, 0x0) sendmsg$IPSET_CMD_SAVE(0xffffffffffffffff, &(0x7f0000000300)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000280)=ANY=[@ANYBLOB="3c0000000806000000000000000000000000000000000000070000001900020073797a300000000005000100070000000900020073"], 0x3c}}, 0x0) accept4$unix(0xffffffffffffffff, &(0x7f0000000180), &(0x7f0000000240)=0x6e, 0x0) r1 = socket$inet6(0x10, 0x3, 0x0) sendto$inet6(r1, &(0x7f0000000000)='%', 0x10a73, 0x800, 0x0, 0x4b6ae4f95a5de35b) 12:51:49 executing program 0: r0 = openat$fb0(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) ioctl$FBIOBLANK(r0, 0x4611, 0x3) ioctl$FBIOBLANK(r0, 0x4611, 0x0) 12:51:49 executing program 4: r0 = bpf$MAP_CREATE(0x100000000000000, &(0x7f00000000c0)={0x12, 0x9, 0x8, 0x4}, 0x40) bpf$MAP_DELETE_ELEM(0x3, &(0x7f0000000000)={r0, &(0x7f0000000100)}, 0x20) [ 657.501041][ T4347] loop1: p1 start 16777202 is beyond EOD, truncated [ 657.526498][ T4347] loop1: p2 start 6 is beyond EOD, truncated [ 657.553829][ T4347] loop1: p3 start 225 is beyond EOD, truncated [ 657.568614][ T4347] loop1: p4 size 2 extends beyond EOD, truncated [ 657.583524][ T4367] netlink: 41325 bytes leftover after parsing attributes in process `syz-executor.2'. [ 657.594968][ T4347] loop1: p5 start 6 is beyond EOD, truncated 12:51:49 executing program 3: r0 = fanotify_init(0x0, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) fanotify_mark(r0, 0x105, 0x4000103a, r1, 0x0) r2 = creat(&(0x7f00000001c0)='./file0\x00', 0x0) dup2(r2, r0) 12:51:50 executing program 4: r0 = bpf$MAP_CREATE(0x100000000000000, &(0x7f00000000c0)={0x12, 0x9, 0x8, 0x4}, 0x40) bpf$MAP_DELETE_ELEM(0x3, &(0x7f0000000000)={r0, &(0x7f0000000100)}, 0x20) [ 657.612970][ T4347] loop1: p6 start 225 is beyond EOD, truncated [ 657.622255][ T4367] netlink: 'syz-executor.2': attribute type 2 has an invalid length. [ 657.642816][ T4335] loop1: p1 < > p2 p3 p4 < p5 p6 > [ 657.645034][ T4367] netlink: 4 bytes leftover after parsing attributes in process `syz-executor.2'. [ 657.652609][ T4335] loop1: partition table partially beyond EOD, truncated [ 657.687013][ T4335] loop1: p1 start 16777202 is beyond EOD, truncated [ 657.704479][ T4335] loop1: p2 start 6 is beyond EOD, truncated [ 657.716924][ T4335] loop1: p3 start 225 is beyond EOD, truncated [ 657.733711][ T4335] loop1: p4 size 2 extends beyond EOD, truncated [ 657.754581][ T4335] loop1: p5 start 6 is beyond EOD, truncated [ 657.770115][ T4335] loop1: p6 start 225 is beyond EOD, truncated 12:51:50 executing program 1: syz_read_part_table(0x0, 0x1, &(0x7f0000000000)=[{&(0x7f0000000100)="020105000016f2ffff00ff45ac0000ffffff81000000060000000000024000ffffff82000000e100000088770072003007000500000000000000008000da55aa", 0x40, 0x1c0}]) 12:51:50 executing program 0: r0 = openat$fb0(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) ioctl$FBIOBLANK(r0, 0x4611, 0x3) ioctl$FBIOBLANK(r0, 0x4611, 0x0) [ 657.893658][ T4397] loop1: detected capacity change from 0 to 1 [ 657.921553][ T4397] loop1: p1 < > p2 p3 p4 < p5 p6 > [ 657.928319][ T4397] loop1: partition table partially beyond EOD, truncated [ 657.935811][ T4397] loop1: p1 start 16777202 is beyond EOD, truncated [ 657.943074][ T4397] loop1: p2 start 6 is beyond EOD, truncated [ 657.950056][ T4397] loop1: p3 start 225 is beyond EOD, truncated [ 657.956321][ T4397] loop1: p4 size 2 extends beyond EOD, truncated [ 657.964255][ T4397] loop1: p5 start 6 is beyond EOD, truncated [ 657.971047][ T4397] loop1: p6 start 225 is beyond EOD, truncated 12:51:52 executing program 5: socketpair$tipc(0x1e, 0x2, 0x0, &(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r0, 0x8912, 0x400308) prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x80000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r1 = gettid() write$sndseq(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0, 0x0, 0x0, 0x0, @tick, {}, {}, @ext={0x139, &(0x7f0000000180)="c4c69107787b049e6e859c2cbb8e4f91357af7a22899f339cbe0d6db21df2275cd990e0bce00bedc792bf9d41be758fb901e829dff0d7870634898ce82807e945a4ac7266d45154f350a8e3d44312496362bc044bd552dfd4730d8e9ffa9982780ba4d38d8181dbcead5ed83a75229ccf456b3139953c6346c75daa83ca4da23df239e908990f5a5a76f4533e417c27c314909ef50b40c720b4087b7e216b385f0a91568a6228678928778a1f30e1aad46495127888a8528508ee9902d7d6aef32dface09a6b027caf24da71ef4b658d8d0781ae65d0c4dc60fb9f28487eee4e2e1147a1d85f998ff0112faab754c3f8346597a5ad4d56c4ee76cd94074b61e94a300150efa8e84f42daf0a1a7d1f8fcae8caa2b39901bcd0b32fd3926d6f43449a586614ec409e35898db05dfc86bd6e9e55dd8e1519e7d02"}}], 0x1c) wait4(0x0, 0x0, 0x80000000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f0000000100)=[{&(0x7f0000000040)}, {&(0x7f0000000000)="0832f497d38350418e4bb321019511dc5df26e9a0b7ecb6974f527cc14538d1efb1ffe03284f6d33265be9c604b293f20e96beeb2aa4c457ac37a3a3f1ce8682500fcecd80", 0x45}], 0x2, 0x0) ptrace$setopts(0x4206, r1, 0x0, 0x0) tkill(r1, 0x17) ptrace$setregs(0xd, r1, 0x0, &(0x7f0000000080)) ptrace$cont(0x7, r1, 0x0, 0x0) 12:51:52 executing program 3: r0 = fanotify_init(0x0, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) fanotify_mark(r0, 0x105, 0x4000103a, r1, 0x0) r2 = creat(&(0x7f00000001c0)='./file0\x00', 0x0) dup2(r2, r0) 12:51:52 executing program 2: r0 = openat$fb0(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) ioctl$FBIOBLANK(r0, 0x4611, 0x3) ioctl$FBIOBLANK(r0, 0x4611, 0x0) 12:51:52 executing program 4: r0 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) preadv(r1, &(0x7f0000000280)=[{&(0x7f0000000080)=""/12, 0xc}, {&(0x7f0000000300)=""/135, 0x87}], 0x2, 0x0, 0x0) 12:51:52 executing program 0: r0 = openat$fb0(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) ioctl$FBIOBLANK(r0, 0x4611, 0x3) ioctl$FBIOBLANK(r0, 0x4611, 0x0) 12:51:52 executing program 1: syz_read_part_table(0x0, 0x1, &(0x7f0000000000)=[{&(0x7f0000000100)="020105000016f2ffff00ff45ac0000ffffff81000000060000000000024000ffffff82000000e100000088770072003007000500000000000000008000da55aa", 0x40, 0x1c0}]) 12:51:52 executing program 3: r0 = creat(&(0x7f0000000140)='./bus\x00', 0x0) fcntl$setstatus(r0, 0x4, 0x46002) io_setup(0x1, &(0x7f0000000180)=0x0) lseek(r0, 0x3c, 0x0) r2 = creat(&(0x7f0000000100)='./bus\x00', 0x0) r3 = open(&(0x7f0000000780)='./bus\x00', 0x14507e, 0x0) mmap(&(0x7f0000000000/0x600000)=nil, 0x600000, 0x7ffffe, 0x4002011, r3, 0x0) fallocate(r2, 0x0, 0x0, 0x1000f4) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r4 = openat$zero(0xffffffffffffff9c, &(0x7f0000001c00), 0x0, 0x0) readv(r4, &(0x7f0000000ac0)=[{0x0}, {0x0}, {&(0x7f0000000380)=""/74, 0x200003ca}], 0x3) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000040)='cpuset.effective_mems\x00', 0x0, 0x0) socket$bt_hidp(0x1f, 0x3, 0x6) fallocate(0xffffffffffffffff, 0x9, 0x0, 0x4) io_submit(r1, 0x45, &(0x7f0000000540)=[&(0x7f00000000c0)={0x101010, 0x400000000000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x377140be6b5ef4c7}]) [ 660.384002][ T4413] dlm: non-version read from control device 135 [ 660.421425][ T4414] dlm: non-version read from control device 135 12:51:52 executing program 2: r0 = openat$fb0(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) ioctl$FBIOBLANK(r0, 0x4611, 0x3) ioctl$FBIOBLANK(r0, 0x4611, 0x0) [ 660.431638][ T4415] loop1: detected capacity change from 0 to 1 12:51:52 executing program 4: r0 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) preadv(r1, &(0x7f0000000280)=[{&(0x7f0000000080)=""/12, 0xc}, {&(0x7f0000000300)=""/135, 0x87}], 0x2, 0x0, 0x0) 12:51:52 executing program 0: r0 = socket$alg(0x26, 0x5, 0x0) bind$alg(r0, &(0x7f0000000000)={0x26, 'skcipher\x00', 0x0, 0x0, 'ecb-serpent-sse2\x00'}, 0x58) setsockopt$ALG_SET_KEY(r0, 0x117, 0x1, 0x0, 0x0) r1 = accept$alg(r0, 0x0, 0x0) sendmmsg$alg(r1, &(0x7f00000007c0)=[{0x0, 0x0, &(0x7f0000000500)=[{&(0x7f0000000a00)="efe843373df685683362eb9bf167859d4f8e15caf1f48d57f9990a42821e5a47e3edf91dba2be60bacc0f609387ca03df015be228658c9a78cd81d91baa841bb7db8d0670b79ece3e0bb647481d10afb556c1bc564e3776e951aff70fd13f2d097dd73b0a09f4b7870d68fd7592316d08bd6db0d5f4f31b1dc40f32de72c96e491ad7a0eecc66238b324e8101264301f35d8a32e4cc8fae853babc635f7b74e059c5002cf09a261501c96279a217a9aa861fb43405e4516cd4a277fb7957fa3574f9a6e045bdadda4eb21014403e927dab37311cbf9091957916dcecead6a5a3475a4976bee8702832053387294375b09123d3c4139d440f7b834f62d7004077e4ea11ec81b781bbcc919266762a7e7a9af757c5beda5187bb79116df9cc02749e379c92de48ffe99e34243dd76da16af695d2bfda7aeed6e3af4db7fa09cec9293f8ad2c168488d7c0758137f842ad08084efe55a556d02c35380f4a75e80bbf8e592af4452bf3a66abd1effb2b7c54b77e7500af77a83cf1a6d6b107407f65a340bb26ce004aeb238c63e9ef96319335c3c16666cba96d25f5b2d99fe0b2bd7487ced4316a8b046a64ba16cb1cdded3fbbe1c539654710f5ebd856534849a4dcdd51118f178f35f8ae59a3955c9abba33ece5527675d22a8f15437d311282f4fd23c4854938d", 0x1e7}, {&(0x7f0000000400)="978119527c665a6352397030c5c9f9e80a802b68b80904da9f1862dcc96d916668942885839c52f3d3591cc20f39962252804e1bfeaaaabfcd32e5ff869522700b8bd014c942b6e66a783ad751666f44fc205a8db7082962fe2cfa6aad2b4d8d8a76e3434fa7a69e22942c9998cbd3e3e924dca929710953decf3f4cde85be9ffd46873dbb968938e94aeaa40f05f249890edf081b7a38da9d8ec9aa19809abbb55f0449afa731c118553522388bb159522fa73a150928077240baa7286f15a1e7168b71a534e64730995be61062087f0381af821f4fd1a43eef287928", 0xdd}, {&(0x7f0000000c00)="4f441b2c1e6af6e09475acfc631b21a37fa2cf928165ff2a6e15ece7a7c70c10d3256ea02a4b3438729c1e8e610f693950e187f50757cb7b76b298192662885c87a34a5f0692e18057be185443d767de0c763d0e68156dc7719899392874d7ad4e1d50db2eff014c4bf32c1515553b064b4ef452893f0677090781df0926e31d28e731460e6f89e42f90bf61e0d7a9c82881cda80229f82e599ba69a9264cd488220c06e877170f3f213f47c234b262995921846183585601c9997a29e18d3bc73c998b1ca83c2c657a4e6dc299eaa6a3c3a4ee9a4051533856cd62aca970b6d5238c1567f67c8636e1d11a9a254ec6a59658c8c211cdc27c729d54d8de6130fbf82e753c2da759fa589db4b058bea091681d750efdfd05dab3ee2d1f116f4c1843260431a50393195f919564c62ded72cb012ad5b0c106d9eb9ad137a3966bc82998663d259695b9205e791c87f051eb9215eed9ed5e708e7b5e1c146970f3aef34a68ce0a55ec25afefea1771772201854594ea0c191da955fef9b7d0333d38864a071b8e4a259b17a3846a9030eed9d534fea50124928fd916c89ce723e125d50075045541dcc88765eb6d329871fc8d03cbf1932313e25d7137a1246bc31b466a6e189ce1cefd85771e9080e5cd0dccd5650baf3e5c1f3510f9408772b35e11f7d9d904aa337c8b2056ef59d7bf5912ee1ebc889bba733ad6aef2e61f4e9b0e0a34722ab55c671b1cee4527f309d1e9e8b02cdfbb5122e6e34f5cca047a0691acb86f820a1e9b2e1601b5da37047f12c6c754d4358ac714fa142c56104c5eeb822b8e141534006faa0bd7582b9693e311ba5b2a4fda84aba7e0f92e3ff5562d44e7d5795b57c7d94b145dc683b8fdcbec727f2e0d0cdd746e6a5688428454587f58499d4fa0376b3ee50aae73c83b50f5aa8c9835f180b49945fa8315f9690e7b3567c3192a1e716e6af6136504b889a5f6f66b31b8e6521af872babd6d53d19ac6bbe1a7e7c3151ec28d04e4c0880a9b930208f4626f759377a10eb2b85b70e1464bf43d81451b2b2f06cb14054b6afc87fc78979fdd26e4c98d3c3e5fd16529c695d387cadba272a8d3b548a8a7bc827bc7da70b725f09536cfd263ca466b650568590c10cb7144b5d93760b83dab8036f8b0e542755880b2bb26810c27fb283ecdc15a6c6c983f94396b1cb5d2b7b4444d5be681b6adc472da4899278ec2585de802844a2312606849b7dec15d739253e5d28f260ba5f65a25bd12ac0c13c02e2772c1165c7f09c3208475c54f658345191aa4199bd24c7688a10a3be1d3b732d0133dff11ef2db5ddeae4f19b7efd5512b643a7a56c8d82d467070407f2e274015c575768c63c3279f9dcbef2a97674c2d4ff414dc20ed6a2b0321d46d201b7115c3e9f7a02fa0e07d1ed9c9d906f86577096cd6a6bd3c8162abc49da5be000dd4e4550173312520c15ae3aece5211b59b8e76a285cda13cd4f7863ef122a9b18a9997e4c9d0f25c7a5af61972bd060a4a6b51b45ec6a953d5bfabeca3585694b92f451cd95bf600c92d5ea1f0619e4b7598bcda73347227a48b9a7c3dcfc267ef2a84dacc38c09aadd426b017782753d9353a7210651bd224e21d5630a2c01e5fff12a4421b7bc345cc191bec2eb14f25cfd883b5683362930c0d4a0d19111693e4eb48935de23ceb437ae1f039e125d1ffdb2aac9d026d40de04b2ed066d2de7e0e0b70e070db59582ff4dff47561920e5924dbc72092cabc7e211761f1b012127536bc8ca7197516887d6e4c7c9e4f574dcf441348e4912ddb569b18c5c75970aaa54ec8d6d9db7b2f64c37042d67c1ef72bb2323b850cb983020c87abecfcf1a0ba8f472f6718a200006e7aa52ca40d1bf8e3d004b0348a6dfae278622c54e2280a36711b615051513629b6bd81d1d332d188b25f3cac4ae2b74f48dcafb84f24577019dc2ae7c2f151644658b3f0ffb9ce3e31fa5bdc0e9788d6667ceace49b42f2875bc3ae492f66f80e34114c2cb326672d4d462d2c568e98ce6f1a8e65cc96a206afacca145f6939c5525de6d4fc005524da8a86c67dbc67077617624d16a10d50b3219deb2df4dbeb1344ca56d9409b1774aa6986c042c18a0129cd45314b593e59a51173071cd96aaa70acab63c0108f8f33fba8f526a51257f4cb17d466fae71c926df762f66c5986de87dad184011cc5bab40d28f3767b5e44432c3665ff1fe64b57ee97875bb830c7eb1fc42fe7c8e1dc2275acf56d26031c678d2ac85fbedee1c821216fb8b520ec99cfbbf92661a39319c0c9b3b8219b78ac017334a149b046b525a75df9c70542668afa95cb44a3da96a6036d0638ee1616d9a6df66b4d67b1f17b702ea4b6d721817364fa1b830ae996ef51c095064c8cb7b71d0ffc3244e0f5b8af87ffa6cbb902621a60ad679d75055afdca60988b94d1159d6cc8ee574385bed2ed3df2ec9f1988888b2736c85467f0883247dab31a3ca687e83b69237f0359fdb2eef3c514f9d1eb400c271bb391d805229f27bc1039196ab536e71cc1e3f23d717def37dc6caf3fe1397e98ad24cfc14e473c6b4c567bb8993092a7a50360d75f2bdd1786428bf8322722812f61fd0a9fd7ad431e912722ff7b23a792e8afd82da34f0e711dc6a1e09944c27f3a6d78b2044119683a4790fe5b4ce404bccb615ebbd4e03399c742f57c40201114e55c8267485d4128195a28a3d3b1464b6a60955b18bb857e798341d6600d9c4c6f66629716d33c03b97d9b7b36f46b4af8158b8742981e6fea98a5b25b7ee12be86feec0cc4683f836c99a8a7982753806bc5210c95c8c849ae3cb9eb33a23521d37a943baddaad8cdb7a100e371bcf76e60192588ff85d57f0d0abd0fdc06446c438aa9e0acab71c34c1bbaf6e3bcf9986ba187c5061960091ecd02ef8f8929cfb8ade8df656cadc6c014fc6b98675ff40d700f8b7910a9ea856a008b394011179cefff4e79fbe967319c17b173a86fe3baa13a8eb80dd4cd382bf86e6362124b1a3953129bbffe64364062626ba1f569d44e4a622997055297b2bab6f834e73bf2d914a02912f7002734e3e105aefa9d5b080573c70f3d6b07d6b6b1a5d8a10ac133058cdf34681b0f8f2fc47c8fbe535ae1b4a5e07027b34be3a5a4789077d623a7954ecd5835a334ad40c6b6c13ba1c80c6f14e2bf2391837dd4b812ecd56ed72fd0f23aba16f2814f1906753baed23bec502adc6f2e3dc7c3341bdd089c492ef52f6215b74cf27f093cf1f0d1cee3e433216599af1d8c23e973486bf917e752dc3a0369d73efd65e7ab5a330537fcacf690d57e8ee53651f74bb4cff067e836555ac295b5b721c2b0d3340a3c9a0eda8be3b45363ddc4b74db333750580750659c8e69ef1273f727f03152057545fbc98289aeef85f3e556fcefb0f9061b6b81b7ab5ae8012bdfbc845625c0b95ce9b1ea63c266baeff424e577510779c052d22b548825836606a730a5e548e8889386482040decfb1a0b98d3f233b6fd27055f32ce0e1ab7c8a1a73099b9255bd934ef8c8572672f7898b0ed60e7dbb698242f44bc661ac88dca2751860e6e57460432388c87a933aa3467bf1692b19b1534d3033356d018abd9330a38871800a1d4a637b7808591d5983154abe32cba2ed2b4ff77f991d5d726ae6305bda3ffc44963a5869fee6212c904aae57d95227f95f0a17e80474c9ce762dacd61b75ec7f15bee5a487b24c42c8fc0bf3a4ea8dd99746c806fc52719d0624496e07e9dfc168e1ecf0ffefa460c756e929e4a171cfda5678df79ccf2f4341cb57625f946f36b7a6e3c6587aa8280c538ea26d1332be8a5d20281fd2d08b6a0fdb1d705b56a657b17d5667156e9c52d16dc076c992b28b871db40c51215a6dfb4f943910c1655fc16c65037d4f7b6c5e28cea0614eb2498fa5a8696746bd7c91f31fe26901a039930bcba375d05480e8f76ebf79287909cf07c0ffc43329642c2ba65114e5f6e978e3b38e93549f7ee772c8feee245969e5050fb628d672d9081b7d1ece823b31c9e2371d236954fb6675f29312d6f41a55d040a6e0f361d20b20112c675e6bf62b7dddbe8504502b7ea7d5fe008dcd10cdf401857da3cd5971c180f9229d00caea063f7d515af353bab0800865e0d8409178a63efc602da7dfa1a7c636c4039e8ad61cdcd321169f068b57da37dac4917a3ca98d7a3d590b306dcb4c7bedbe924eb09405d49a1e4e9d84d0ade561a07f4e406e8da697ed9f77f1b524c6862adb167616133aa69129690adff5ffc8ecd0057fec77c16917c0deaa24546efc6d5875b6014768b99514e1a26abbe", 0xbfc}], 0x3, &(0x7f00000000c0)=[@op={0x18, 0x117, 0x3, 0x1}], 0x18}], 0x1, 0x0) recvmmsg(r1, &(0x7f00000008c0)=[{{0x0, 0x0, &(0x7f00000005c0)=[{&(0x7f00000001c0)=""/200, 0xfec8}, {&(0x7f0000000300)=""/225, 0xe1}], 0x2, 0x0, 0x0, 0x2000000}}], 0x1, 0xec0, 0x0) [ 660.491534][ T36] audit: type=1800 audit(1630587112.872:237): pid=4427 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=13929 res=0 errno=0 [ 660.512950][ T4424] loop1: p1 < > p2 p3 p4 < p5 p6 > [ 660.530990][ T4424] loop1: partition table partially beyond EOD, truncated [ 660.558646][ T4431] dlm: non-version read from control device 135 [ 660.561739][ T4424] loop1: p1 start 16777202 is beyond EOD, [ 660.571900][ T36] audit: type=1800 audit(1630587112.872:238): pid=4427 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=13929 res=0 errno=0 [ 660.604637][ T4424] truncated 12:51:53 executing program 2: r0 = openat$fb0(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) ioctl$FBIOBLANK(r0, 0x4611, 0x3) ioctl$FBIOBLANK(r0, 0x4611, 0x0) 12:51:53 executing program 0: r0 = socket$alg(0x26, 0x5, 0x0) bind$alg(r0, &(0x7f0000000000)={0x26, 'skcipher\x00', 0x0, 0x0, 'ecb-serpent-sse2\x00'}, 0x58) setsockopt$ALG_SET_KEY(r0, 0x117, 0x1, 0x0, 0x0) r1 = accept$alg(r0, 0x0, 0x0) sendmmsg$alg(r1, &(0x7f00000007c0)=[{0x0, 0x0, &(0x7f0000000500)=[{&(0x7f0000000a00)="efe843373df685683362eb9bf167859d4f8e15caf1f48d57f9990a42821e5a47e3edf91dba2be60bacc0f609387ca03df015be228658c9a78cd81d91baa841bb7db8d0670b79ece3e0bb647481d10afb556c1bc564e3776e951aff70fd13f2d097dd73b0a09f4b7870d68fd7592316d08bd6db0d5f4f31b1dc40f32de72c96e491ad7a0eecc66238b324e8101264301f35d8a32e4cc8fae853babc635f7b74e059c5002cf09a261501c96279a217a9aa861fb43405e4516cd4a277fb7957fa3574f9a6e045bdadda4eb21014403e927dab37311cbf9091957916dcecead6a5a3475a4976bee8702832053387294375b09123d3c4139d440f7b834f62d7004077e4ea11ec81b781bbcc919266762a7e7a9af757c5beda5187bb79116df9cc02749e379c92de48ffe99e34243dd76da16af695d2bfda7aeed6e3af4db7fa09cec9293f8ad2c168488d7c0758137f842ad08084efe55a556d02c35380f4a75e80bbf8e592af4452bf3a66abd1effb2b7c54b77e7500af77a83cf1a6d6b107407f65a340bb26ce004aeb238c63e9ef96319335c3c16666cba96d25f5b2d99fe0b2bd7487ced4316a8b046a64ba16cb1cdded3fbbe1c539654710f5ebd856534849a4dcdd51118f178f35f8ae59a3955c9abba33ece5527675d22a8f15437d311282f4fd23c4854938d", 0x1e7}, {&(0x7f0000000400)="978119527c665a6352397030c5c9f9e80a802b68b80904da9f1862dcc96d916668942885839c52f3d3591cc20f39962252804e1bfeaaaabfcd32e5ff869522700b8bd014c942b6e66a783ad751666f44fc205a8db7082962fe2cfa6aad2b4d8d8a76e3434fa7a69e22942c9998cbd3e3e924dca929710953decf3f4cde85be9ffd46873dbb968938e94aeaa40f05f249890edf081b7a38da9d8ec9aa19809abbb55f0449afa731c118553522388bb159522fa73a150928077240baa7286f15a1e7168b71a534e64730995be61062087f0381af821f4fd1a43eef287928", 0xdd}, {&(0x7f0000000c00)="4f441b2c1e6af6e09475acfc631b21a37fa2cf928165ff2a6e15ece7a7c70c10d3256ea02a4b3438729c1e8e610f693950e187f50757cb7b76b298192662885c87a34a5f0692e18057be185443d767de0c763d0e68156dc7719899392874d7ad4e1d50db2eff014c4bf32c1515553b064b4ef452893f0677090781df0926e31d28e731460e6f89e42f90bf61e0d7a9c82881cda80229f82e599ba69a9264cd488220c06e877170f3f213f47c234b262995921846183585601c9997a29e18d3bc73c998b1ca83c2c657a4e6dc299eaa6a3c3a4ee9a4051533856cd62aca970b6d5238c1567f67c8636e1d11a9a254ec6a59658c8c211cdc27c729d54d8de6130fbf82e753c2da759fa589db4b058bea091681d750efdfd05dab3ee2d1f116f4c1843260431a50393195f919564c62ded72cb012ad5b0c106d9eb9ad137a3966bc82998663d259695b9205e791c87f051eb9215eed9ed5e708e7b5e1c146970f3aef34a68ce0a55ec25afefea1771772201854594ea0c191da955fef9b7d0333d38864a071b8e4a259b17a3846a9030eed9d534fea50124928fd916c89ce723e125d50075045541dcc88765eb6d329871fc8d03cbf1932313e25d7137a1246bc31b466a6e189ce1cefd85771e9080e5cd0dccd5650baf3e5c1f3510f9408772b35e11f7d9d904aa337c8b2056ef59d7bf5912ee1ebc889bba733ad6aef2e61f4e9b0e0a34722ab55c671b1cee4527f309d1e9e8b02cdfbb5122e6e34f5cca047a0691acb86f820a1e9b2e1601b5da37047f12c6c754d4358ac714fa142c56104c5eeb822b8e141534006faa0bd7582b9693e311ba5b2a4fda84aba7e0f92e3ff5562d44e7d5795b57c7d94b145dc683b8fdcbec727f2e0d0cdd746e6a5688428454587f58499d4fa0376b3ee50aae73c83b50f5aa8c9835f180b49945fa8315f9690e7b3567c3192a1e716e6af6136504b889a5f6f66b31b8e6521af872babd6d53d19ac6bbe1a7e7c3151ec28d04e4c0880a9b930208f4626f759377a10eb2b85b70e1464bf43d81451b2b2f06cb14054b6afc87fc78979fdd26e4c98d3c3e5fd16529c695d387cadba272a8d3b548a8a7bc827bc7da70b725f09536cfd263ca466b650568590c10cb7144b5d93760b83dab8036f8b0e542755880b2bb26810c27fb283ecdc15a6c6c983f94396b1cb5d2b7b4444d5be681b6adc472da4899278ec2585de802844a2312606849b7dec15d739253e5d28f260ba5f65a25bd12ac0c13c02e2772c1165c7f09c3208475c54f658345191aa4199bd24c7688a10a3be1d3b732d0133dff11ef2db5ddeae4f19b7efd5512b643a7a56c8d82d467070407f2e274015c575768c63c3279f9dcbef2a97674c2d4ff414dc20ed6a2b0321d46d201b7115c3e9f7a02fa0e07d1ed9c9d906f86577096cd6a6bd3c8162abc49da5be000dd4e4550173312520c15ae3aece5211b59b8e76a285cda13cd4f7863ef122a9b18a9997e4c9d0f25c7a5af61972bd060a4a6b51b45ec6a953d5bfabeca3585694b92f451cd95bf600c92d5ea1f0619e4b7598bcda73347227a48b9a7c3dcfc267ef2a84dacc38c09aadd426b017782753d9353a7210651bd224e21d5630a2c01e5fff12a4421b7bc345cc191bec2eb14f25cfd883b5683362930c0d4a0d19111693e4eb48935de23ceb437ae1f039e125d1ffdb2aac9d026d40de04b2ed066d2de7e0e0b70e070db59582ff4dff47561920e5924dbc72092cabc7e211761f1b012127536bc8ca7197516887d6e4c7c9e4f574dcf441348e4912ddb569b18c5c75970aaa54ec8d6d9db7b2f64c37042d67c1ef72bb2323b850cb983020c87abecfcf1a0ba8f472f6718a200006e7aa52ca40d1bf8e3d004b0348a6dfae278622c54e2280a36711b615051513629b6bd81d1d332d188b25f3cac4ae2b74f48dcafb84f24577019dc2ae7c2f151644658b3f0ffb9ce3e31fa5bdc0e9788d6667ceace49b42f2875bc3ae492f66f80e34114c2cb326672d4d462d2c568e98ce6f1a8e65cc96a206afacca145f6939c5525de6d4fc005524da8a86c67dbc67077617624d16a10d50b3219deb2df4dbeb1344ca56d9409b1774aa6986c042c18a0129cd45314b593e59a51173071cd96aaa70acab63c0108f8f33fba8f526a51257f4cb17d466fae71c926df762f66c5986de87dad184011cc5bab40d28f3767b5e44432c3665ff1fe64b57ee97875bb830c7eb1fc42fe7c8e1dc2275acf56d26031c678d2ac85fbedee1c821216fb8b520ec99cfbbf92661a39319c0c9b3b8219b78ac017334a149b046b525a75df9c70542668afa95cb44a3da96a6036d0638ee1616d9a6df66b4d67b1f17b702ea4b6d721817364fa1b830ae996ef51c095064c8cb7b71d0ffc3244e0f5b8af87ffa6cbb902621a60ad679d75055afdca60988b94d1159d6cc8ee574385bed2ed3df2ec9f1988888b2736c85467f0883247dab31a3ca687e83b69237f0359fdb2eef3c514f9d1eb400c271bb391d805229f27bc1039196ab536e71cc1e3f23d717def37dc6caf3fe1397e98ad24cfc14e473c6b4c567bb8993092a7a50360d75f2bdd1786428bf8322722812f61fd0a9fd7ad431e912722ff7b23a792e8afd82da34f0e711dc6a1e09944c27f3a6d78b2044119683a4790fe5b4ce404bccb615ebbd4e03399c742f57c40201114e55c8267485d4128195a28a3d3b1464b6a60955b18bb857e798341d6600d9c4c6f66629716d33c03b97d9b7b36f46b4af8158b8742981e6fea98a5b25b7ee12be86feec0cc4683f836c99a8a7982753806bc5210c95c8c849ae3cb9eb33a23521d37a943baddaad8cdb7a100e371bcf76e60192588ff85d57f0d0abd0fdc06446c438aa9e0acab71c34c1bbaf6e3bcf9986ba187c5061960091ecd02ef8f8929cfb8ade8df656cadc6c014fc6b98675ff40d700f8b7910a9ea856a008b394011179cefff4e79fbe967319c17b173a86fe3baa13a8eb80dd4cd382bf86e6362124b1a3953129bbffe64364062626ba1f569d44e4a622997055297b2bab6f834e73bf2d914a02912f7002734e3e105aefa9d5b080573c70f3d6b07d6b6b1a5d8a10ac133058cdf34681b0f8f2fc47c8fbe535ae1b4a5e07027b34be3a5a4789077d623a7954ecd5835a334ad40c6b6c13ba1c80c6f14e2bf2391837dd4b812ecd56ed72fd0f23aba16f2814f1906753baed23bec502adc6f2e3dc7c3341bdd089c492ef52f6215b74cf27f093cf1f0d1cee3e433216599af1d8c23e973486bf917e752dc3a0369d73efd65e7ab5a330537fcacf690d57e8ee53651f74bb4cff067e836555ac295b5b721c2b0d3340a3c9a0eda8be3b45363ddc4b74db333750580750659c8e69ef1273f727f03152057545fbc98289aeef85f3e556fcefb0f9061b6b81b7ab5ae8012bdfbc845625c0b95ce9b1ea63c266baeff424e577510779c052d22b548825836606a730a5e548e8889386482040decfb1a0b98d3f233b6fd27055f32ce0e1ab7c8a1a73099b9255bd934ef8c8572672f7898b0ed60e7dbb698242f44bc661ac88dca2751860e6e57460432388c87a933aa3467bf1692b19b1534d3033356d018abd9330a38871800a1d4a637b7808591d5983154abe32cba2ed2b4ff77f991d5d726ae6305bda3ffc44963a5869fee6212c904aae57d95227f95f0a17e80474c9ce762dacd61b75ec7f15bee5a487b24c42c8fc0bf3a4ea8dd99746c806fc52719d0624496e07e9dfc168e1ecf0ffefa460c756e929e4a171cfda5678df79ccf2f4341cb57625f946f36b7a6e3c6587aa8280c538ea26d1332be8a5d20281fd2d08b6a0fdb1d705b56a657b17d5667156e9c52d16dc076c992b28b871db40c51215a6dfb4f943910c1655fc16c65037d4f7b6c5e28cea0614eb2498fa5a8696746bd7c91f31fe26901a039930bcba375d05480e8f76ebf79287909cf07c0ffc43329642c2ba65114e5f6e978e3b38e93549f7ee772c8feee245969e5050fb628d672d9081b7d1ece823b31c9e2371d236954fb6675f29312d6f41a55d040a6e0f361d20b20112c675e6bf62b7dddbe8504502b7ea7d5fe008dcd10cdf401857da3cd5971c180f9229d00caea063f7d515af353bab0800865e0d8409178a63efc602da7dfa1a7c636c4039e8ad61cdcd321169f068b57da37dac4917a3ca98d7a3d590b306dcb4c7bedbe924eb09405d49a1e4e9d84d0ade561a07f4e406e8da697ed9f77f1b524c6862adb167616133aa69129690adff5ffc8ecd0057fec77c16917c0deaa24546efc6d5875b6014768b99514e1a26abbe", 0xbfc}], 0x3, &(0x7f00000000c0)=[@op={0x18, 0x117, 0x3, 0x1}], 0x18}], 0x1, 0x0) recvmmsg(r1, &(0x7f00000008c0)=[{{0x0, 0x0, &(0x7f00000005c0)=[{&(0x7f00000001c0)=""/200, 0xfec8}, {&(0x7f0000000300)=""/225, 0xe1}], 0x2, 0x0, 0x0, 0x2000000}}], 0x1, 0xec0, 0x0) [ 660.617919][ T4424] loop1: p2 start 6 is beyond EOD, truncated [ 660.637667][ T4424] loop1: p3 start 225 is beyond EOD, truncated [ 660.673728][ T4424] loop1: p4 size 2 extends beyond EOD, truncated [ 660.702793][ T4424] loop1: p5 start 6 is beyond EOD, truncated [ 660.720606][ T4424] loop1: p6 start 225 is beyond EOD, truncated [ 660.743461][ T4415] loop1: p1 < > p2 p3 p4 < p5 p6 > [ 660.752845][ T4415] loop1: partition table partially beyond EOD, truncated [ 660.772319][ T4415] loop1: p1 start 16777202 is beyond EOD, truncated [ 660.780395][ T4415] loop1: p2 start 6 is beyond EOD, truncated [ 660.786442][ T4415] loop1: p3 start 225 is beyond EOD, truncated [ 660.795982][ T4415] loop1: p4 size 2 extends beyond EOD, truncated [ 660.804685][ T4415] loop1: p5 start 6 is beyond EOD, truncated [ 660.814605][ T4415] loop1: p6 start 225 is beyond EOD, truncated 12:51:55 executing program 5: socketpair$tipc(0x1e, 0x2, 0x0, &(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r0, 0x8912, 0x400308) prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x80000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r1 = gettid() write$sndseq(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0, 0x0, 0x0, 0x0, @tick, {}, {}, @ext={0x139, &(0x7f0000000180)="c4c69107787b049e6e859c2cbb8e4f91357af7a22899f339cbe0d6db21df2275cd990e0bce00bedc792bf9d41be758fb901e829dff0d7870634898ce82807e945a4ac7266d45154f350a8e3d44312496362bc044bd552dfd4730d8e9ffa9982780ba4d38d8181dbcead5ed83a75229ccf456b3139953c6346c75daa83ca4da23df239e908990f5a5a76f4533e417c27c314909ef50b40c720b4087b7e216b385f0a91568a6228678928778a1f30e1aad46495127888a8528508ee9902d7d6aef32dface09a6b027caf24da71ef4b658d8d0781ae65d0c4dc60fb9f28487eee4e2e1147a1d85f998ff0112faab754c3f8346597a5ad4d56c4ee76cd94074b61e94a300150efa8e84f42daf0a1a7d1f8fcae8caa2b39901bcd0b32fd3926d6f43449a586614ec409e35898db05dfc86bd6e9e55dd8e1519e7d02"}}], 0x1c) wait4(0x0, 0x0, 0x80000000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f0000000100)=[{&(0x7f0000000040)}, {&(0x7f0000000000)="0832f497d38350418e4bb321019511dc5df26e9a0b7ecb6974f527cc14538d1efb1ffe03284f6d33265be9c604b293f20e96beeb2aa4c457ac37a3a3f1ce8682500fcecd80", 0x45}], 0x2, 0x0) ptrace$setopts(0x4206, r1, 0x0, 0x0) tkill(r1, 0x17) ptrace$setregs(0xd, r1, 0x0, &(0x7f0000000080)) ptrace$cont(0x7, r1, 0x0, 0x0) 12:51:55 executing program 4: r0 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) preadv(r1, &(0x7f0000000280)=[{&(0x7f0000000080)=""/12, 0xc}, {&(0x7f0000000300)=""/135, 0x87}], 0x2, 0x0, 0x0) 12:51:55 executing program 0: r0 = socket$alg(0x26, 0x5, 0x0) bind$alg(r0, &(0x7f0000000000)={0x26, 'skcipher\x00', 0x0, 0x0, 'ecb-serpent-sse2\x00'}, 0x58) setsockopt$ALG_SET_KEY(r0, 0x117, 0x1, 0x0, 0x0) r1 = accept$alg(r0, 0x0, 0x0) sendmmsg$alg(r1, &(0x7f00000007c0)=[{0x0, 0x0, &(0x7f0000000500)=[{&(0x7f0000000a00)="efe843373df685683362eb9bf167859d4f8e15caf1f48d57f9990a42821e5a47e3edf91dba2be60bacc0f609387ca03df015be228658c9a78cd81d91baa841bb7db8d0670b79ece3e0bb647481d10afb556c1bc564e3776e951aff70fd13f2d097dd73b0a09f4b7870d68fd7592316d08bd6db0d5f4f31b1dc40f32de72c96e491ad7a0eecc66238b324e8101264301f35d8a32e4cc8fae853babc635f7b74e059c5002cf09a261501c96279a217a9aa861fb43405e4516cd4a277fb7957fa3574f9a6e045bdadda4eb21014403e927dab37311cbf9091957916dcecead6a5a3475a4976bee8702832053387294375b09123d3c4139d440f7b834f62d7004077e4ea11ec81b781bbcc919266762a7e7a9af757c5beda5187bb79116df9cc02749e379c92de48ffe99e34243dd76da16af695d2bfda7aeed6e3af4db7fa09cec9293f8ad2c168488d7c0758137f842ad08084efe55a556d02c35380f4a75e80bbf8e592af4452bf3a66abd1effb2b7c54b77e7500af77a83cf1a6d6b107407f65a340bb26ce004aeb238c63e9ef96319335c3c16666cba96d25f5b2d99fe0b2bd7487ced4316a8b046a64ba16cb1cdded3fbbe1c539654710f5ebd856534849a4dcdd51118f178f35f8ae59a3955c9abba33ece5527675d22a8f15437d311282f4fd23c4854938d", 0x1e7}, {&(0x7f0000000400)="978119527c665a6352397030c5c9f9e80a802b68b80904da9f1862dcc96d916668942885839c52f3d3591cc20f39962252804e1bfeaaaabfcd32e5ff869522700b8bd014c942b6e66a783ad751666f44fc205a8db7082962fe2cfa6aad2b4d8d8a76e3434fa7a69e22942c9998cbd3e3e924dca929710953decf3f4cde85be9ffd46873dbb968938e94aeaa40f05f249890edf081b7a38da9d8ec9aa19809abbb55f0449afa731c118553522388bb159522fa73a150928077240baa7286f15a1e7168b71a534e64730995be61062087f0381af821f4fd1a43eef287928", 0xdd}, {&(0x7f0000000c00)="4f441b2c1e6af6e09475acfc631b21a37fa2cf928165ff2a6e15ece7a7c70c10d3256ea02a4b3438729c1e8e610f693950e187f50757cb7b76b298192662885c87a34a5f0692e18057be185443d767de0c763d0e68156dc7719899392874d7ad4e1d50db2eff014c4bf32c1515553b064b4ef452893f0677090781df0926e31d28e731460e6f89e42f90bf61e0d7a9c82881cda80229f82e599ba69a9264cd488220c06e877170f3f213f47c234b262995921846183585601c9997a29e18d3bc73c998b1ca83c2c657a4e6dc299eaa6a3c3a4ee9a4051533856cd62aca970b6d5238c1567f67c8636e1d11a9a254ec6a59658c8c211cdc27c729d54d8de6130fbf82e753c2da759fa589db4b058bea091681d750efdfd05dab3ee2d1f116f4c1843260431a50393195f919564c62ded72cb012ad5b0c106d9eb9ad137a3966bc82998663d259695b9205e791c87f051eb9215eed9ed5e708e7b5e1c146970f3aef34a68ce0a55ec25afefea1771772201854594ea0c191da955fef9b7d0333d38864a071b8e4a259b17a3846a9030eed9d534fea50124928fd916c89ce723e125d50075045541dcc88765eb6d329871fc8d03cbf1932313e25d7137a1246bc31b466a6e189ce1cefd85771e9080e5cd0dccd5650baf3e5c1f3510f9408772b35e11f7d9d904aa337c8b2056ef59d7bf5912ee1ebc889bba733ad6aef2e61f4e9b0e0a34722ab55c671b1cee4527f309d1e9e8b02cdfbb5122e6e34f5cca047a0691acb86f820a1e9b2e1601b5da37047f12c6c754d4358ac714fa142c56104c5eeb822b8e141534006faa0bd7582b9693e311ba5b2a4fda84aba7e0f92e3ff5562d44e7d5795b57c7d94b145dc683b8fdcbec727f2e0d0cdd746e6a5688428454587f58499d4fa0376b3ee50aae73c83b50f5aa8c9835f180b49945fa8315f9690e7b3567c3192a1e716e6af6136504b889a5f6f66b31b8e6521af872babd6d53d19ac6bbe1a7e7c3151ec28d04e4c0880a9b930208f4626f759377a10eb2b85b70e1464bf43d81451b2b2f06cb14054b6afc87fc78979fdd26e4c98d3c3e5fd16529c695d387cadba272a8d3b548a8a7bc827bc7da70b725f09536cfd263ca466b650568590c10cb7144b5d93760b83dab8036f8b0e542755880b2bb26810c27fb283ecdc15a6c6c983f94396b1cb5d2b7b4444d5be681b6adc472da4899278ec2585de802844a2312606849b7dec15d739253e5d28f260ba5f65a25bd12ac0c13c02e2772c1165c7f09c3208475c54f658345191aa4199bd24c7688a10a3be1d3b732d0133dff11ef2db5ddeae4f19b7efd5512b643a7a56c8d82d467070407f2e274015c575768c63c3279f9dcbef2a97674c2d4ff414dc20ed6a2b0321d46d201b7115c3e9f7a02fa0e07d1ed9c9d906f86577096cd6a6bd3c8162abc49da5be000dd4e4550173312520c15ae3aece5211b59b8e76a285cda13cd4f7863ef122a9b18a9997e4c9d0f25c7a5af61972bd060a4a6b51b45ec6a953d5bfabeca3585694b92f451cd95bf600c92d5ea1f0619e4b7598bcda73347227a48b9a7c3dcfc267ef2a84dacc38c09aadd426b017782753d9353a7210651bd224e21d5630a2c01e5fff12a4421b7bc345cc191bec2eb14f25cfd883b5683362930c0d4a0d19111693e4eb48935de23ceb437ae1f039e125d1ffdb2aac9d026d40de04b2ed066d2de7e0e0b70e070db59582ff4dff47561920e5924dbc72092cabc7e211761f1b012127536bc8ca7197516887d6e4c7c9e4f574dcf441348e4912ddb569b18c5c75970aaa54ec8d6d9db7b2f64c37042d67c1ef72bb2323b850cb983020c87abecfcf1a0ba8f472f6718a200006e7aa52ca40d1bf8e3d004b0348a6dfae278622c54e2280a36711b615051513629b6bd81d1d332d188b25f3cac4ae2b74f48dcafb84f24577019dc2ae7c2f151644658b3f0ffb9ce3e31fa5bdc0e9788d6667ceace49b42f2875bc3ae492f66f80e34114c2cb326672d4d462d2c568e98ce6f1a8e65cc96a206afacca145f6939c5525de6d4fc005524da8a86c67dbc67077617624d16a10d50b3219deb2df4dbeb1344ca56d9409b1774aa6986c042c18a0129cd45314b593e59a51173071cd96aaa70acab63c0108f8f33fba8f526a51257f4cb17d466fae71c926df762f66c5986de87dad184011cc5bab40d28f3767b5e44432c3665ff1fe64b57ee97875bb830c7eb1fc42fe7c8e1dc2275acf56d26031c678d2ac85fbedee1c821216fb8b520ec99cfbbf92661a39319c0c9b3b8219b78ac017334a149b046b525a75df9c70542668afa95cb44a3da96a6036d0638ee1616d9a6df66b4d67b1f17b702ea4b6d721817364fa1b830ae996ef51c095064c8cb7b71d0ffc3244e0f5b8af87ffa6cbb902621a60ad679d75055afdca60988b94d1159d6cc8ee574385bed2ed3df2ec9f1988888b2736c85467f0883247dab31a3ca687e83b69237f0359fdb2eef3c514f9d1eb400c271bb391d805229f27bc1039196ab536e71cc1e3f23d717def37dc6caf3fe1397e98ad24cfc14e473c6b4c567bb8993092a7a50360d75f2bdd1786428bf8322722812f61fd0a9fd7ad431e912722ff7b23a792e8afd82da34f0e711dc6a1e09944c27f3a6d78b2044119683a4790fe5b4ce404bccb615ebbd4e03399c742f57c40201114e55c8267485d4128195a28a3d3b1464b6a60955b18bb857e798341d6600d9c4c6f66629716d33c03b97d9b7b36f46b4af8158b8742981e6fea98a5b25b7ee12be86feec0cc4683f836c99a8a7982753806bc5210c95c8c849ae3cb9eb33a23521d37a943baddaad8cdb7a100e371bcf76e60192588ff85d57f0d0abd0fdc06446c438aa9e0acab71c34c1bbaf6e3bcf9986ba187c5061960091ecd02ef8f8929cfb8ade8df656cadc6c014fc6b98675ff40d700f8b7910a9ea856a008b394011179cefff4e79fbe967319c17b173a86fe3baa13a8eb80dd4cd382bf86e6362124b1a3953129bbffe64364062626ba1f569d44e4a622997055297b2bab6f834e73bf2d914a02912f7002734e3e105aefa9d5b080573c70f3d6b07d6b6b1a5d8a10ac133058cdf34681b0f8f2fc47c8fbe535ae1b4a5e07027b34be3a5a4789077d623a7954ecd5835a334ad40c6b6c13ba1c80c6f14e2bf2391837dd4b812ecd56ed72fd0f23aba16f2814f1906753baed23bec502adc6f2e3dc7c3341bdd089c492ef52f6215b74cf27f093cf1f0d1cee3e433216599af1d8c23e973486bf917e752dc3a0369d73efd65e7ab5a330537fcacf690d57e8ee53651f74bb4cff067e836555ac295b5b721c2b0d3340a3c9a0eda8be3b45363ddc4b74db333750580750659c8e69ef1273f727f03152057545fbc98289aeef85f3e556fcefb0f9061b6b81b7ab5ae8012bdfbc845625c0b95ce9b1ea63c266baeff424e577510779c052d22b548825836606a730a5e548e8889386482040decfb1a0b98d3f233b6fd27055f32ce0e1ab7c8a1a73099b9255bd934ef8c8572672f7898b0ed60e7dbb698242f44bc661ac88dca2751860e6e57460432388c87a933aa3467bf1692b19b1534d3033356d018abd9330a38871800a1d4a637b7808591d5983154abe32cba2ed2b4ff77f991d5d726ae6305bda3ffc44963a5869fee6212c904aae57d95227f95f0a17e80474c9ce762dacd61b75ec7f15bee5a487b24c42c8fc0bf3a4ea8dd99746c806fc52719d0624496e07e9dfc168e1ecf0ffefa460c756e929e4a171cfda5678df79ccf2f4341cb57625f946f36b7a6e3c6587aa8280c538ea26d1332be8a5d20281fd2d08b6a0fdb1d705b56a657b17d5667156e9c52d16dc076c992b28b871db40c51215a6dfb4f943910c1655fc16c65037d4f7b6c5e28cea0614eb2498fa5a8696746bd7c91f31fe26901a039930bcba375d05480e8f76ebf79287909cf07c0ffc43329642c2ba65114e5f6e978e3b38e93549f7ee772c8feee245969e5050fb628d672d9081b7d1ece823b31c9e2371d236954fb6675f29312d6f41a55d040a6e0f361d20b20112c675e6bf62b7dddbe8504502b7ea7d5fe008dcd10cdf401857da3cd5971c180f9229d00caea063f7d515af353bab0800865e0d8409178a63efc602da7dfa1a7c636c4039e8ad61cdcd321169f068b57da37dac4917a3ca98d7a3d590b306dcb4c7bedbe924eb09405d49a1e4e9d84d0ade561a07f4e406e8da697ed9f77f1b524c6862adb167616133aa69129690adff5ffc8ecd0057fec77c16917c0deaa24546efc6d5875b6014768b99514e1a26abbe", 0xbfc}], 0x3, &(0x7f00000000c0)=[@op={0x18, 0x117, 0x3, 0x1}], 0x18}], 0x1, 0x0) recvmmsg(r1, &(0x7f00000008c0)=[{{0x0, 0x0, &(0x7f00000005c0)=[{&(0x7f00000001c0)=""/200, 0xfec8}, {&(0x7f0000000300)=""/225, 0xe1}], 0x2, 0x0, 0x0, 0x2000000}}], 0x1, 0xec0, 0x0) 12:51:55 executing program 2: r0 = socket(0x2b, 0x1, 0x1) bind$rds(r0, &(0x7f0000000200)={0x2, 0x0, @multicast1}, 0x10) 12:51:55 executing program 3: r0 = creat(&(0x7f0000000140)='./bus\x00', 0x0) fcntl$setstatus(r0, 0x4, 0x46002) io_setup(0x1, &(0x7f0000000180)=0x0) lseek(r0, 0x3c, 0x0) r2 = creat(&(0x7f0000000100)='./bus\x00', 0x0) r3 = open(&(0x7f0000000780)='./bus\x00', 0x14507e, 0x0) mmap(&(0x7f0000000000/0x600000)=nil, 0x600000, 0x7ffffe, 0x4002011, r3, 0x0) fallocate(r2, 0x0, 0x0, 0x1000f4) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r4 = openat$zero(0xffffffffffffff9c, &(0x7f0000001c00), 0x0, 0x0) readv(r4, &(0x7f0000000ac0)=[{0x0}, {0x0}, {&(0x7f0000000380)=""/74, 0x200003ca}], 0x3) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000040)='cpuset.effective_mems\x00', 0x0, 0x0) socket$bt_hidp(0x1f, 0x3, 0x6) fallocate(0xffffffffffffffff, 0x9, 0x0, 0x4) io_submit(r1, 0x45, &(0x7f0000000540)=[&(0x7f00000000c0)={0x101010, 0x400000000000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x377140be6b5ef4c7}]) 12:51:55 executing program 1: syz_read_part_table(0x0, 0x1, &(0x7f0000000000)=[{&(0x7f0000000100)="020105000016f2ffff00ff45ac0000ffffff81000000060000000000024000ffffff82000000e100000088770072003007000500000000000000008000da55aa", 0x40, 0x1c0}]) 12:51:55 executing program 2: r0 = socket(0x2b, 0x1, 0x1) bind$rds(r0, &(0x7f0000000200)={0x2, 0x0, @multicast1}, 0x10) [ 663.460417][ T4467] loop1: detected capacity change from 0 to 1 [ 663.491344][ T4468] dlm: non-version read from control device 135 12:51:55 executing program 2: r0 = socket(0x2b, 0x1, 0x1) bind$rds(r0, &(0x7f0000000200)={0x2, 0x0, @multicast1}, 0x10) [ 663.503095][ T36] audit: type=1800 audit(1630587115.882:239): pid=4464 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=15505 res=0 errno=0 [ 663.550513][ T4477] loop1: p1 < > p2 p3 p4 < p5 p6 > 12:51:55 executing program 0: r0 = socket$alg(0x26, 0x5, 0x0) bind$alg(r0, &(0x7f0000000000)={0x26, 'skcipher\x00', 0x0, 0x0, 'ecb-serpent-sse2\x00'}, 0x58) setsockopt$ALG_SET_KEY(r0, 0x117, 0x1, 0x0, 0x0) r1 = accept$alg(r0, 0x0, 0x0) sendmmsg$alg(r1, &(0x7f00000007c0)=[{0x0, 0x0, &(0x7f0000000500)=[{&(0x7f0000000a00)="efe843373df685683362eb9bf167859d4f8e15caf1f48d57f9990a42821e5a47e3edf91dba2be60bacc0f609387ca03df015be228658c9a78cd81d91baa841bb7db8d0670b79ece3e0bb647481d10afb556c1bc564e3776e951aff70fd13f2d097dd73b0a09f4b7870d68fd7592316d08bd6db0d5f4f31b1dc40f32de72c96e491ad7a0eecc66238b324e8101264301f35d8a32e4cc8fae853babc635f7b74e059c5002cf09a261501c96279a217a9aa861fb43405e4516cd4a277fb7957fa3574f9a6e045bdadda4eb21014403e927dab37311cbf9091957916dcecead6a5a3475a4976bee8702832053387294375b09123d3c4139d440f7b834f62d7004077e4ea11ec81b781bbcc919266762a7e7a9af757c5beda5187bb79116df9cc02749e379c92de48ffe99e34243dd76da16af695d2bfda7aeed6e3af4db7fa09cec9293f8ad2c168488d7c0758137f842ad08084efe55a556d02c35380f4a75e80bbf8e592af4452bf3a66abd1effb2b7c54b77e7500af77a83cf1a6d6b107407f65a340bb26ce004aeb238c63e9ef96319335c3c16666cba96d25f5b2d99fe0b2bd7487ced4316a8b046a64ba16cb1cdded3fbbe1c539654710f5ebd856534849a4dcdd51118f178f35f8ae59a3955c9abba33ece5527675d22a8f15437d311282f4fd23c4854938d", 0x1e7}, {&(0x7f0000000400)="978119527c665a6352397030c5c9f9e80a802b68b80904da9f1862dcc96d916668942885839c52f3d3591cc20f39962252804e1bfeaaaabfcd32e5ff869522700b8bd014c942b6e66a783ad751666f44fc205a8db7082962fe2cfa6aad2b4d8d8a76e3434fa7a69e22942c9998cbd3e3e924dca929710953decf3f4cde85be9ffd46873dbb968938e94aeaa40f05f249890edf081b7a38da9d8ec9aa19809abbb55f0449afa731c118553522388bb159522fa73a150928077240baa7286f15a1e7168b71a534e64730995be61062087f0381af821f4fd1a43eef287928", 0xdd}, {&(0x7f0000000c00)="4f441b2c1e6af6e09475acfc631b21a37fa2cf928165ff2a6e15ece7a7c70c10d3256ea02a4b3438729c1e8e610f693950e187f50757cb7b76b298192662885c87a34a5f0692e18057be185443d767de0c763d0e68156dc7719899392874d7ad4e1d50db2eff014c4bf32c1515553b064b4ef452893f0677090781df0926e31d28e731460e6f89e42f90bf61e0d7a9c82881cda80229f82e599ba69a9264cd488220c06e877170f3f213f47c234b262995921846183585601c9997a29e18d3bc73c998b1ca83c2c657a4e6dc299eaa6a3c3a4ee9a4051533856cd62aca970b6d5238c1567f67c8636e1d11a9a254ec6a59658c8c211cdc27c729d54d8de6130fbf82e753c2da759fa589db4b058bea091681d750efdfd05dab3ee2d1f116f4c1843260431a50393195f919564c62ded72cb012ad5b0c106d9eb9ad137a3966bc82998663d259695b9205e791c87f051eb9215eed9ed5e708e7b5e1c146970f3aef34a68ce0a55ec25afefea1771772201854594ea0c191da955fef9b7d0333d38864a071b8e4a259b17a3846a9030eed9d534fea50124928fd916c89ce723e125d50075045541dcc88765eb6d329871fc8d03cbf1932313e25d7137a1246bc31b466a6e189ce1cefd85771e9080e5cd0dccd5650baf3e5c1f3510f9408772b35e11f7d9d904aa337c8b2056ef59d7bf5912ee1ebc889bba733ad6aef2e61f4e9b0e0a34722ab55c671b1cee4527f309d1e9e8b02cdfbb5122e6e34f5cca047a0691acb86f820a1e9b2e1601b5da37047f12c6c754d4358ac714fa142c56104c5eeb822b8e141534006faa0bd7582b9693e311ba5b2a4fda84aba7e0f92e3ff5562d44e7d5795b57c7d94b145dc683b8fdcbec727f2e0d0cdd746e6a5688428454587f58499d4fa0376b3ee50aae73c83b50f5aa8c9835f180b49945fa8315f9690e7b3567c3192a1e716e6af6136504b889a5f6f66b31b8e6521af872babd6d53d19ac6bbe1a7e7c3151ec28d04e4c0880a9b930208f4626f759377a10eb2b85b70e1464bf43d81451b2b2f06cb14054b6afc87fc78979fdd26e4c98d3c3e5fd16529c695d387cadba272a8d3b548a8a7bc827bc7da70b725f09536cfd263ca466b650568590c10cb7144b5d93760b83dab8036f8b0e542755880b2bb26810c27fb283ecdc15a6c6c983f94396b1cb5d2b7b4444d5be681b6adc472da4899278ec2585de802844a2312606849b7dec15d739253e5d28f260ba5f65a25bd12ac0c13c02e2772c1165c7f09c3208475c54f658345191aa4199bd24c7688a10a3be1d3b732d0133dff11ef2db5ddeae4f19b7efd5512b643a7a56c8d82d467070407f2e274015c575768c63c3279f9dcbef2a97674c2d4ff414dc20ed6a2b0321d46d201b7115c3e9f7a02fa0e07d1ed9c9d906f86577096cd6a6bd3c8162abc49da5be000dd4e4550173312520c15ae3aece5211b59b8e76a285cda13cd4f7863ef122a9b18a9997e4c9d0f25c7a5af61972bd060a4a6b51b45ec6a953d5bfabeca3585694b92f451cd95bf600c92d5ea1f0619e4b7598bcda73347227a48b9a7c3dcfc267ef2a84dacc38c09aadd426b017782753d9353a7210651bd224e21d5630a2c01e5fff12a4421b7bc345cc191bec2eb14f25cfd883b5683362930c0d4a0d19111693e4eb48935de23ceb437ae1f039e125d1ffdb2aac9d026d40de04b2ed066d2de7e0e0b70e070db59582ff4dff47561920e5924dbc72092cabc7e211761f1b012127536bc8ca7197516887d6e4c7c9e4f574dcf441348e4912ddb569b18c5c75970aaa54ec8d6d9db7b2f64c37042d67c1ef72bb2323b850cb983020c87abecfcf1a0ba8f472f6718a200006e7aa52ca40d1bf8e3d004b0348a6dfae278622c54e2280a36711b615051513629b6bd81d1d332d188b25f3cac4ae2b74f48dcafb84f24577019dc2ae7c2f151644658b3f0ffb9ce3e31fa5bdc0e9788d6667ceace49b42f2875bc3ae492f66f80e34114c2cb326672d4d462d2c568e98ce6f1a8e65cc96a206afacca145f6939c5525de6d4fc005524da8a86c67dbc67077617624d16a10d50b3219deb2df4dbeb1344ca56d9409b1774aa6986c042c18a0129cd45314b593e59a51173071cd96aaa70acab63c0108f8f33fba8f526a51257f4cb17d466fae71c926df762f66c5986de87dad184011cc5bab40d28f3767b5e44432c3665ff1fe64b57ee97875bb830c7eb1fc42fe7c8e1dc2275acf56d26031c678d2ac85fbedee1c821216fb8b520ec99cfbbf92661a39319c0c9b3b8219b78ac017334a149b046b525a75df9c70542668afa95cb44a3da96a6036d0638ee1616d9a6df66b4d67b1f17b702ea4b6d721817364fa1b830ae996ef51c095064c8cb7b71d0ffc3244e0f5b8af87ffa6cbb902621a60ad679d75055afdca60988b94d1159d6cc8ee574385bed2ed3df2ec9f1988888b2736c85467f0883247dab31a3ca687e83b69237f0359fdb2eef3c514f9d1eb400c271bb391d805229f27bc1039196ab536e71cc1e3f23d717def37dc6caf3fe1397e98ad24cfc14e473c6b4c567bb8993092a7a50360d75f2bdd1786428bf8322722812f61fd0a9fd7ad431e912722ff7b23a792e8afd82da34f0e711dc6a1e09944c27f3a6d78b2044119683a4790fe5b4ce404bccb615ebbd4e03399c742f57c40201114e55c8267485d4128195a28a3d3b1464b6a60955b18bb857e798341d6600d9c4c6f66629716d33c03b97d9b7b36f46b4af8158b8742981e6fea98a5b25b7ee12be86feec0cc4683f836c99a8a7982753806bc5210c95c8c849ae3cb9eb33a23521d37a943baddaad8cdb7a100e371bcf76e60192588ff85d57f0d0abd0fdc06446c438aa9e0acab71c34c1bbaf6e3bcf9986ba187c5061960091ecd02ef8f8929cfb8ade8df656cadc6c014fc6b98675ff40d700f8b7910a9ea856a008b394011179cefff4e79fbe967319c17b173a86fe3baa13a8eb80dd4cd382bf86e6362124b1a3953129bbffe64364062626ba1f569d44e4a622997055297b2bab6f834e73bf2d914a02912f7002734e3e105aefa9d5b080573c70f3d6b07d6b6b1a5d8a10ac133058cdf34681b0f8f2fc47c8fbe535ae1b4a5e07027b34be3a5a4789077d623a7954ecd5835a334ad40c6b6c13ba1c80c6f14e2bf2391837dd4b812ecd56ed72fd0f23aba16f2814f1906753baed23bec502adc6f2e3dc7c3341bdd089c492ef52f6215b74cf27f093cf1f0d1cee3e433216599af1d8c23e973486bf917e752dc3a0369d73efd65e7ab5a330537fcacf690d57e8ee53651f74bb4cff067e836555ac295b5b721c2b0d3340a3c9a0eda8be3b45363ddc4b74db333750580750659c8e69ef1273f727f03152057545fbc98289aeef85f3e556fcefb0f9061b6b81b7ab5ae8012bdfbc845625c0b95ce9b1ea63c266baeff424e577510779c052d22b548825836606a730a5e548e8889386482040decfb1a0b98d3f233b6fd27055f32ce0e1ab7c8a1a73099b9255bd934ef8c8572672f7898b0ed60e7dbb698242f44bc661ac88dca2751860e6e57460432388c87a933aa3467bf1692b19b1534d3033356d018abd9330a38871800a1d4a637b7808591d5983154abe32cba2ed2b4ff77f991d5d726ae6305bda3ffc44963a5869fee6212c904aae57d95227f95f0a17e80474c9ce762dacd61b75ec7f15bee5a487b24c42c8fc0bf3a4ea8dd99746c806fc52719d0624496e07e9dfc168e1ecf0ffefa460c756e929e4a171cfda5678df79ccf2f4341cb57625f946f36b7a6e3c6587aa8280c538ea26d1332be8a5d20281fd2d08b6a0fdb1d705b56a657b17d5667156e9c52d16dc076c992b28b871db40c51215a6dfb4f943910c1655fc16c65037d4f7b6c5e28cea0614eb2498fa5a8696746bd7c91f31fe26901a039930bcba375d05480e8f76ebf79287909cf07c0ffc43329642c2ba65114e5f6e978e3b38e93549f7ee772c8feee245969e5050fb628d672d9081b7d1ece823b31c9e2371d236954fb6675f29312d6f41a55d040a6e0f361d20b20112c675e6bf62b7dddbe8504502b7ea7d5fe008dcd10cdf401857da3cd5971c180f9229d00caea063f7d515af353bab0800865e0d8409178a63efc602da7dfa1a7c636c4039e8ad61cdcd321169f068b57da37dac4917a3ca98d7a3d590b306dcb4c7bedbe924eb09405d49a1e4e9d84d0ade561a07f4e406e8da697ed9f77f1b524c6862adb167616133aa69129690adff5ffc8ecd0057fec77c16917c0deaa24546efc6d5875b6014768b99514e1a26abbe", 0xbfc}], 0x3, &(0x7f00000000c0)=[@op={0x18, 0x117, 0x3, 0x1}], 0x18}], 0x1, 0x0) recvmmsg(r1, &(0x7f00000008c0)=[{{0x0, 0x0, &(0x7f00000005c0)=[{&(0x7f00000001c0)=""/200, 0xfec8}, {&(0x7f0000000300)=""/225, 0xe1}], 0x2, 0x0, 0x0, 0x2000000}}], 0x1, 0xec0, 0x0) [ 663.555953][ T4477] loop1: partition table partially beyond EOD, truncated 12:51:55 executing program 4: r0 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) preadv(r1, &(0x7f0000000280)=[{&(0x7f0000000080)=""/12, 0xc}, {&(0x7f0000000300)=""/135, 0x87}], 0x2, 0x0, 0x0) 12:51:56 executing program 2: r0 = socket(0x2b, 0x1, 0x1) bind$rds(r0, &(0x7f0000000200)={0x2, 0x0, @multicast1}, 0x10) [ 663.590934][ T4477] loop1: p1 start 16777202 is beyond EOD, truncated [ 663.634720][ T36] audit: type=1800 audit(1630587115.912:240): pid=4464 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=15505 res=0 errno=0 [ 663.667321][ T4477] loop1: p2 start 6 is beyond EOD, truncated 12:51:56 executing program 0: r0 = creat(&(0x7f0000000140)='./bus\x00', 0x0) fcntl$setstatus(r0, 0x4, 0x46002) io_setup(0x1, &(0x7f0000000180)=0x0) lseek(r0, 0x3c, 0x0) r2 = creat(&(0x7f0000000100)='./bus\x00', 0x0) r3 = open(&(0x7f0000000780)='./bus\x00', 0x14507e, 0x0) mmap(&(0x7f0000000000/0x600000)=nil, 0x600000, 0x7ffffe, 0x4002011, r3, 0x0) fallocate(r2, 0x0, 0x0, 0x1000f4) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r4 = openat$zero(0xffffffffffffff9c, &(0x7f0000001c00), 0x0, 0x0) readv(r4, &(0x7f0000000ac0)=[{0x0}, {0x0}, {&(0x7f0000000380)=""/74, 0x200003ca}], 0x3) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000040)='cpuset.effective_mems\x00', 0x0, 0x0) socket$bt_hidp(0x1f, 0x3, 0x6) fallocate(0xffffffffffffffff, 0x9, 0x0, 0x4) io_submit(r1, 0x45, &(0x7f0000000540)=[&(0x7f00000000c0)={0x101010, 0x400000000000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x377140be6b5ef4c7}]) [ 663.697161][ T4477] loop1: p3 start 225 is beyond EOD, truncated [ 663.737448][ T4477] loop1: p4 size 2 extends beyond EOD, truncated [ 663.769534][ T4477] loop1: p5 start 6 is beyond EOD, truncated [ 663.791774][ T4477] loop1: p6 start 225 is beyond EOD, truncated [ 663.795569][ T4492] dlm: non-version read from control device 135 [ 663.816278][ T4467] loop1: p1 < > p2 p3 p4 < p5 p6 > [ 663.824988][ T4467] loop1: partition table partially beyond EOD, truncated [ 663.848109][ T36] audit: type=1800 audit(1630587116.232:241): pid=4495 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.0" name="bus" dev="sda1" ino=14943 res=0 errno=0 [ 663.853329][ T4467] loop1: p1 start 16777202 is beyond EOD, truncated [ 663.881241][ T4467] loop1: p2 start 6 is beyond EOD, truncated [ 663.890121][ T4467] loop1: p3 start 225 is beyond EOD, truncated [ 663.896288][ T4467] loop1: p4 size 2 extends beyond EOD, truncated [ 663.904515][ T4467] loop1: p5 start 6 is beyond EOD, truncated [ 663.913634][ T36] audit: type=1800 audit(1630587116.252:242): pid=4495 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.0" name="bus" dev="sda1" ino=14943 res=0 errno=0 [ 663.936283][ T4467] loop1: p6 start 225 is beyond EOD, truncated 12:51:58 executing program 0: r0 = creat(&(0x7f0000000140)='./bus\x00', 0x0) fcntl$setstatus(r0, 0x4, 0x46002) io_setup(0x1, &(0x7f0000000180)=0x0) lseek(r0, 0x3c, 0x0) r2 = creat(&(0x7f0000000100)='./bus\x00', 0x0) r3 = open(&(0x7f0000000780)='./bus\x00', 0x14507e, 0x0) mmap(&(0x7f0000000000/0x600000)=nil, 0x600000, 0x7ffffe, 0x4002011, r3, 0x0) fallocate(r2, 0x0, 0x0, 0x1000f4) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r4 = openat$zero(0xffffffffffffff9c, &(0x7f0000001c00), 0x0, 0x0) readv(r4, &(0x7f0000000ac0)=[{0x0}, {0x0}, {&(0x7f0000000380)=""/74, 0x200003ca}], 0x3) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000040)='cpuset.effective_mems\x00', 0x0, 0x0) socket$bt_hidp(0x1f, 0x3, 0x6) fallocate(0xffffffffffffffff, 0x9, 0x0, 0x4) io_submit(r1, 0x45, &(0x7f0000000540)=[&(0x7f00000000c0)={0x101010, 0x400000000000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x377140be6b5ef4c7}]) 12:51:58 executing program 5: clone(0x20002100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) perf_event_open(&(0x7f0000000500)={0x1, 0x80, 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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) prctl$PR_SET_MM_MAP(0x23, 0xe, &(0x7f0000000580)={&(0x7f0000ffd000/0x2000)=nil, &(0x7f0000700000/0x1000)=nil, &(0x7f0000616000/0x1000)=nil, &(0x7f00007b3000/0x4000)=nil, &(0x7f00000fd000/0x4000)=nil, &(0x7f0000599000/0x2000)=nil, &(0x7f0000ffb000/0x4000)=nil, &(0x7f0000082000/0x4000)=nil, &(0x7f0000625000/0x1000)=nil, &(0x7f0000206000/0x3000)=nil, &(0x7f0000ffd000/0x2000)=nil, 0x0}, 0x68) bpf$PROG_LOAD(0x5, &(0x7f00000054c0)={0xe, 0x16, &(0x7f00000009c0)=ANY=[@ANYBLOB="61124c00000000006113500000000000bf2000000000000007000000080000003d0301000000000095000000000000006926000000000000bf67000000000000150600000fff07003506000043fe0000070600000ee60000bf050000000000001f650000000000006507000002000000270700004c0000001f75000000000000bf5400000000000007040000f0fff8ffad430100000000009500000000000000050000000000000095000000000000001c0a7900009d3c2792432a4fa650c512aee994a5642cb064ecd5615f3196e3359aceb7556e7e60bd5d2e4b5992de991371274fdff6e79fc722f15659a7c85615c1b88bc894123cfe23f5e787c1677fbefd35893d883a2c559b7a34db461b1974af360eace66cec40d92706d0bbcc5bf6fec345ae9606c3c1a348f9b395592c1018e5e4b41b13000c94df1f2db24c67d4c7ba9ec035883e2791a9e9dff3e8bfc7d1be000000820102b1900000000000000000387a601e3a3412086dee84efd375f0645f3301f55d3b9efdfbed9b430bcf0418e100bdff1c8bcfc0c229874bc3d2418bab997c8bef9aa55841caa572ddff9220c67c9e17bee524c3dc747445763ecb0a7f2cd12bc34b0fc0271124cfb5279195f701000000f77c71294bbfd85878726c49eb8908596772fe82f7f722e38397996271700241094d272dd8b754b2dd36d44f92991a7817450bc7921dd372e621dd447b86e7ffd1bdc198deb495cac0995ca3ef6c1affb693ae366b0f11db6ee4830db4713e5ce6cac6a27e29f171b8e9f172c3db24558d77b8bf18be45c50b3fc005fa7b134dfc948f6015e0389d7f34cb9c02cf517c8ed7a9b6159c1446ef1c2ccff2bde95aa860ed9b836d6b8fcab7663d9bd8415e6f9006b107b8f3e08de3a638c4fdb8562eb85173720c1df1147c9f5013c82fc98604bd70cd56609a6b739437e3010000d9cf81bcb1d262845762f6b0a284cc463b42492bab0f7b25895cc3ba8bf0b5e0fc018463d03a73fa85429725545128b0e9b550a13d0dd35092250bbce4f618cad2375a34c7f15c3096f300004468cf1aba4a6f21ed0eb3681c696320d3251b7eab79ad8b126500419e25a94ce13a7a96deac79c90b8df10b1e364cf97eaa49fd22942a0fad0d814f230f954eec84ebb7e20594e2e6f2371dda9fb3977f33c516aadc9bc51f23b12f761c4a0335cce4fbe7baafc8d0a6c6d8d0ebc2a2e97f0629af75bcc83cada15d686de0a0bebb94491b4b655f94dfa2ce197dc845ad83ddbcd4c896639831b8e5f254db99752a86b576337ec250c6f83b8cc300f8ffffffffffffe9f5f4628de6563809cdbe2101399c00000000000000000000000000040000d041c283edaef472d000d169d827488760c9eaba70ba10633e1ec690ac69650b22e90000000000004f97aa0fe1ee3a5d7511d1965f68e1c272a6b1853921bc1a603b9a4583d09819eb21e790c487752b878146fc1872dedb"], &(0x7f0000000100)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000040), 0x1f1}, 0x48) r0 = syz_mount_image$ext4(&(0x7f0000000080)='ext3\x00', &(0x7f0000000140)='./file0\x00', 0x7, 0x2, &(0x7f0000000380)=[{&(0x7f0000000240)="d9af42a08e222d58569779359fde1a056da10b0368f99b8b4543f802283ef25c6859be6de658c1a3cc985f06fe943de9ec22749d82228303c630ecfb977eb7f1ee9750bc581ee05f", 0x48, 0x10000}, {&(0x7f00000002c0)="3e88738b9d89d4ed701caedd6221d139b0f1e79065397aad3b654272a2832b83e0ef83037beba537c71e9e8d1687130626222489fea9fa73b937f52a8b87cf7e25f6c9691f1b760b2a7b85551197", 0x4e, 0x1}], 0x3332403, &(0x7f0000000400)={[{@journal_checksum}, {@minixdf}, {@data_writeback}], [{@permit_directio}, {@smackfsdef={'smackfsdef', 0x3d, 'ipv6header\x00'}}, {@subj_type={'subj_type', 0x3d, 'macvtap0\x00'}}]}) openat(r0, &(0x7f0000000480)='./file0\x00', 0x2082, 0x20) flistxattr(0xffffffffffffffff, 0x0, 0x0) exit(0x0) socket$inet6_udplite(0xa, 0x2, 0x88) setsockopt$IP6T_SO_SET_REPLACE(0xffffffffffffffff, 0x29, 0x40, &(0x7f0000006fc0)=@filter={'filter\x00', 0xe, 0x4, 0x470, 0xffffffff, 0x2d0, 0x120, 0x120, 0xffffffff, 0xffffffff, 0x3c8, 0x3c8, 0x3c8, 0xffffffff, 0x4, &(0x7f00000000c0), {[{{@ipv6={@initdev={0xfe, 0x88, '\x00', 0x0, 0x0}, @initdev={0xfe, 0x88, '\x00', 0x0, 0x0}, [0xffffff00, 0x0, 0xffffffff, 0xffffffff], [], 'macvtap0\x00', 'caif0\x00', {}, {}, 0x0, 0x1, 0x4, 0x40}, 0x0, 0xd0, 0xf8, 0x0, {}, [@common=@eui64={{0x28}}]}, @common=@unspec=@STANDARD={0x28, '\x00', 0x0, 0xfffffffffffffffc}}, {{@ipv6={@empty, @mcast2, [0x0, 0x0, 0xff000000, 0xff000000], [0xff, 0x0, 0xff], 'veth1_to_team\x00', 'xfrm0\x00', {}, {}, 0xab, 0x0, 0x1}, 0x0, 0x188, 0x1b0, 0x0, {}, [@common=@ipv6header={{0x28}, {0x0, 0x7}}, @common=@unspec=@conntrack1={{0xb8}, {{@ipv4=@local, [0x0, 0x0, 0x0, 0xffffffff], @ipv4=@initdev={0xac, 0x1e, 0x0, 0x0}, [0x0, 0x0, 0x0, 0xffffffff], @ipv4=@local, [0xff], @ipv6=@empty, [0x0, 0x0, 0x0, 0xff], 0x45f8, 0x4, 0x2b, 0x0, 0x0, 0x0, 0x0, 0x688, 0x691}, 0x80}}]}, @REJECT={0x28}}, {{@uncond, 0x0, 0xd0, 0xf8, 0x0, {}, [@common=@ipv6header={{0x28}, {0x84, 0x20}}]}, @REJECT={0x28, 'REJECT\x00', 0x0, {0xe}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x4d0) 12:51:58 executing program 4: r0 = open$dir(&(0x7f0000000040)='.\x00', 0x10, 0x0) fcntl$lock(r0, 0x7, &(0x7f0000000140)={0x0, 0x1}) 12:51:58 executing program 2: setreuid(0x0, 0xee01) r0 = socket$inet6_udplite(0xa, 0x2, 0x88) ioctl$sock_ipv6_tunnel_SIOCADDPRL(r0, 0x8923, &(0x7f0000000400)={'syztnl1\x00', 0x0}) 12:51:58 executing program 3: r0 = creat(&(0x7f0000000140)='./bus\x00', 0x0) fcntl$setstatus(r0, 0x4, 0x46002) io_setup(0x1, &(0x7f0000000180)=0x0) lseek(r0, 0x3c, 0x0) r2 = creat(&(0x7f0000000100)='./bus\x00', 0x0) r3 = open(&(0x7f0000000780)='./bus\x00', 0x14507e, 0x0) mmap(&(0x7f0000000000/0x600000)=nil, 0x600000, 0x7ffffe, 0x4002011, r3, 0x0) fallocate(r2, 0x0, 0x0, 0x1000f4) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r4 = openat$zero(0xffffffffffffff9c, &(0x7f0000001c00), 0x0, 0x0) readv(r4, &(0x7f0000000ac0)=[{0x0}, {0x0}, {&(0x7f0000000380)=""/74, 0x200003ca}], 0x3) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000040)='cpuset.effective_mems\x00', 0x0, 0x0) socket$bt_hidp(0x1f, 0x3, 0x6) fallocate(0xffffffffffffffff, 0x9, 0x0, 0x4) io_submit(r1, 0x45, &(0x7f0000000540)=[&(0x7f00000000c0)={0x101010, 0x400000000000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x377140be6b5ef4c7}]) 12:51:58 executing program 1: r0 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000640), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f0000000600)=0x14) ioctl$TIOCSETD(r0, 0x5423, &(0x7f0000000040)=0xd) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) 12:51:58 executing program 4: syz_usb_connect$cdc_ecm(0x0, 0x4d, &(0x7f0000000180)={{0x12, 0x1, 0x0, 0x2, 0x0, 0x0, 0x8, 0x525, 0xa4a1, 0x40, 0x1, 0x2, 0x3, 0x1, [{{0x9, 0x2, 0x3b, 0x1, 0x1, 0x0, 0x0, 0x0, [{{0x9, 0x4, 0x0, 0x0, 0x0, 0x2, 0x6, 0x0, 0x0, {{0x5}, {0x5}, {0xd}}, {[], {}, {{0x9, 0x5, 0x3, 0x2, 0x8}}}}}]}}]}}, 0x0) [ 666.517611][ T36] audit: type=1800 audit(1630587118.902:243): pid=4515 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.0" name="bus" dev="sda1" ino=15554 res=0 errno=0 12:51:59 executing program 2: setreuid(0x0, 0xee01) r0 = socket$inet6_udplite(0xa, 0x2, 0x88) ioctl$sock_ipv6_tunnel_SIOCADDPRL(r0, 0x8923, &(0x7f0000000400)={'syztnl1\x00', 0x0}) [ 666.571732][ T4522] loop5: detected capacity change from 0 to 256 12:51:59 executing program 1: perf_event_open(&(0x7f0000000240)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 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, 0x1, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) clone(0x2000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = openat$sysctl(0xffffffffffffff9c, &(0x7f0000000140)='/proc/sys/vm/compact_memory\x00', 0x1, 0x0) write$sysctl(r0, 0x0, 0x0) fcntl$F_SET_FILE_RW_HINT(0xffffffffffffffff, 0x40e, 0x0) socket$inet6_udp(0xa, 0x2, 0x0) sendmmsg$inet6(0xffffffffffffffff, 0x0, 0x0, 0x0) clone(0x0, 0x0, 0x0, 0x0, 0x0) ioctl$sock_inet6_SIOCSIFADDR(0xffffffffffffffff, 0x89a1, &(0x7f0000000300)={@local, 0x6a}) ioctl$sock_inet6_SIOCADDRT(0xffffffffffffffff, 0x89a0, 0x0) ioctl$BTRFS_IOC_GET_SUBVOL_INFO(0xffffffffffffffff, 0x81f8943c, &(0x7f00000004c0)={0x0, ""/256, 0x0, 0x0}) ioctl$BTRFS_IOC_GET_SUBVOL_ROOTREF(0xffffffffffffffff, 0xd000943d, 0x0) ioctl$BTRFS_IOC_GET_SUBVOL_ROOTREF(0xffffffffffffffff, 0xd000943d, 0x0) ioctl$BTRFS_IOC_INO_LOOKUP_USER(r0, 0xd000943e, &(0x7f0000055bc0)={r1, 0x0, "0cfdaaac6fecfffa6f6012a46d05be7a27d7438af87c5396e7967d1e3a024128c5f6ab9f1a4c1c5cc760532b5e4e67fc8f39a5d958144b2cecba06634a9c45b3c7320316d78cca46727dee5810fae4b4c8ba40b5f44b03e85802442873060b45c1957b1f64401db47a12acfc4bfe301f321e219e01cd37711c02518d48da4e9a73040a9b891102d632c626494f6c602619c23a0129b96001696398b0fb16fac5597810309d4e6073cd73d65b24b936949c784953cf9b886acb47d98ecceb04bf873a2f3150d095c152f2bee83af57d9535e42425861ed51ff86ba3a92d1939f0b892ad77af21c193f7d1f66212abca5631a2c0c35eb41b1b479e9e2f7dc4bb65", "adc225bde6f4bc3c828999b1fd20ab6afd34dc2c8bb3d6dc4019f943639bd1afa21d8d4e07ecd1e5227075b5c40e967ac7a825748a18aae68abed79d47d8687e820796869ebcf94b49baef3f578513e5cc5c3588b94eb39005761d2bc410cda5182b307099867ee48a06c9235ffd507ff90bb3d8ce380c867c7f1f7b1540684c1907c74db8946b0eb89d3b0ac840ab628aab1d00048cc878529c964aae6e5a04dfa7da027fbac3ea4a4a1a51976c6c6c40ca35afe570931a58f682749be82c9cd95b1a27f0cfc75a5955ee2d510288748578f384f9ff105d02e8ce868cd652030eeeeaec788c7a6549e6e8bf31aeada1cc179899e21067dbf4c02261db62b7fc2382bd8034ef7d2bd22e8288afbbed2746380b30f8364139771bd0fbd3bd8d9d179a388d8735451e171f284a868be27e48085c85d2a66ae1b6b8e5342991a62dfea84665029b5f4ad8cc2f87f0a013bde4cd004ee01a77ffc0784cad4c552fbf55b85b30f81a6157fd0b3498539c53589e947ec6582f049c1e8c47f2e856a8f09945270f9f2f8c38e4cbe71c0b4ee542a52e52f43a729ace5855e2efd1fb44c13a16756372827a20894c804b1268ae10f92baac25b81ffec5d50555f122ce88cd181e8e929f81d90665626a1a6b90aca9ea7938c44f22054a234a488a0560c23fd977ac9b6bf265aad6e48f5a04e10532dc84feb56dc242a6160e0ae19aabfde3e1a770c6656e7c200adf7b6fe54ac0bcbbf0b274b7cc80cf8bd334210eaeb1e7717cdcd83ebf52a746d986631b8e2b22336705786f2d8ef4c315818031839592d69caf07ca49cccf362823b66cb516a8cb2c462aca0398fc79d88950e14cfc0800a8ae6429d57fa885a294acef8bf2df331e5e6e3cff6a271f74e9833244bf6752be286b32915260c94420c007fd07098bebab1284a1516f6bc682ef573cc67493bb4f0b033bee48948953a74e5e1101e6f9f2fb225138096a778445cdf0dc63b299b4349d9668af22774b55d63ace197845ab722357e991086d23ce10e0624d165f44b20af01d9f2de3f6dc94bb897cf1b977f557e3878f644b9f763fa53f0fb07cbcea61ac66f757cb1781a851700a874c95d7cfa703fb98321929f2bf08566e6e7fbf613d62262e6eb8445995f71966a9bc7cd9348f71342f3243d83bcf0a00d23e9e4005822d635f18ac7b0b90571c603ac00e380908c15c35d9e1ec874ec4a32f95129cc0bbd4a253851fb3c15f98b3a831d84d6cf155956fd085b95d7c82cbf6c1c29ee0ec19941d52315a294ffd2b0b52c1d0bcbdef1c86b9da7adce18df24bd4c8794eee3264359cf0830b0344989950b28337e5cd6f5e18fa4a436c9799f9849137d108bcb3fcbe0af37ac5bbaf0f4734d7585163a195c0c05534526be94fae6ae6e6265f7a2dd8ac650ab5223592fbebb7e5a2ed4ce11680d0df2ae447f0a01d09fc1c4768fcb5f120b4c1ca5ca2650a60723bfcbdbc3a50211e882915df355998ad696df24c84baaf58e2cfa722bee17687957066f8bda51bc5d0811345287f3eef6665b3893734ed6e9b9eff87ac5092bba82b6e30a34878ff820e8d26a02e7a6813d84ccc2b14a299434f7717e751a36c5c9f08c36233c1ab32cc758bd6e13af4a3cadc087b6ea0db80e3884465ff4183a3f1ab245ed5c6fd0fec9c22c59c9e9fe2d602d2f37ee113a80dd41d05e85165b8c6bbb526d9ec9b0bbbf30cb326222bcd98620c3da4fd29867ae60826840b5ef07da6373ef2ba6add73d41a31e8874821959471adcdc75eb04e070bc44fcc5641ecd259851572e9ae607140a637c9f07a2c30e43f6491e2b624e743130145035683dbbebab6dd94776b8e91400b730fa4a3381382751e4a86ddc488029d3339a5d681b05d651cfc7f3214593dbeff05a58967438d793e98b79a0908ad0bf6be53a20529c8ec63ed2f184be9f948b78a136332ffe8f4c87386cea464f6473275f045f166ceda1cf907a1bf368924b3d98acb474d1cf82aeb01ec88f2651b70bc28d30d2fd0a72dbaec631216847b717ef7031a57af5a762e0970175c210d9597614f1becb4dff63fd84b3d693fa2b91d3a5b2a40c4da9b4c33cf5424e50093238152f84291f6f279ac5261b7cac564f778949af868992bfa57f88f36ec129545274e2c4e4c18aab8eca289dbd44d9eba88a6227f4a0810862e46f9d1f3396fbfbde98a59ee89b80e8a501e6be44ae25dc01a7089b9be219340266ac5d62753c463464908d3e7a970a6702d62f2e97359891ff45a6cb27fc22eb4d50044e5a4a1e2f26a8dd46e48697d0f8ab915a6f80305bc9ebb2ae9a135a77bcab0f459caf386c12f7d401a1340ac9cadd9be8ef49bd3f28276217e32ffc8aec47e180fac5959e1b404f238ce0b7c1531a161940ad721dc6c4454be15c949ebfabe772727199a5533bd90185a082c9696b78aab75b97fbe0b46f15769398f5f6324cae30f05bc432e8c749685de08b95b3b061ff546ee5d6b63a132c2835d3496d7a71c5918f913b8e9de3f863bd6e41b44c37ab2882b3a211fbd3d3c42c6c0cf9fb425b35771446b494936a32c322143bd0815552d482fe5b7fedba34e79705844efff99d2db6641bf7c7418ff172430acae6d6f855a07b7e6c69b4669bebd7bf1b2bf3fb5466b79896fdf9c2e32aff57b380ed62ece23e6a9e26640fe8e54529dba6aba5e96d17b5962088e1891261d0abc67596fa6bed4b1f26e54aa2e6114b076e1b89a6265b2dfdb3e6ab231ed07f22d171551d2c135417e30c18595752ddead58425e7927062530c8ab34d195c5e4072eb13a8cdd551cb2689bd0d6d0fb9d0ebd1165ff6114da111e5060db3e95fc498ecc99d0f3904b84af7187ca81abb04676cc1e29fb8d4c1aceedbee67f5b2b43188b401c036b6844446d9fabfe404c52691223d73716e5efa37d149df439ff426d42fda2ab852023e472d6fb865638cdab38d680306277aef1454f90eb28230a54f70267665eba48a86e70f7965b2cbf43a296d37646040f6154331c4899403f4179c86b68dac3918055ca652c71f8a4a7ce9408487dc5239a64cb4e9cc046e8acb87a69175b250793abde3efbfbf322102bcca5efc7a8999bdefb1a4bd407a9ea4b41ba66b01f925b00897706fd4ce7c1b8f8544d4f09afc69a4e95103e4385a56b581b07d2311ed1fe52b09c46ba3dc212380bac5aa536d5a9386d84aaba1bf348f56871d73648541e291fafacbdfbf5d8167b8508827442aaedacfc230d44414dfdfa863fd20a3088279ad13dc2526a3225a55fb10b809e4c9a2642a5cae7c81281d1d27e184d48ecfc63f128f4d25172ff30d13809c6a9c28b8046c15c58b2e22733eba403ba7174a27437b2cf3f636de02620503cf9ced4455502eb2ea771dbddc0f48603413bb41af3dbe84d75f298eb0cc6b223fa34bc87fbb8d98a1e09c506c3ee006ca0c6d8ee4ba6e1a036727f93e0bac6d7992092b3027f98aa50819575c46dc68e43e0059db8863d86c6e9af91bd33f02fff3e7933397c82355bbde0871c3ae7317fe0b51892e7bde8ae4003f22986614439acea8f88dda703119731b8f6d05e4d038b7fc7a9823511abd49dbb5b2b51b274a316401617a1d9c51157bae7b0c686b345c83062cadad06596afc71500bb60aab56569cd50c534e103a4bef2fa7c73641c6f136b21dfb478093e01f2f6bc9f36adb9b83af9fd72739eeb43f2c11cbca938318d0d3bf707d314d10c12b137ced298206b11cf52f5e7caa389e391989471576e7043a54f4d97b995a304e7ea75b6be40421f2dcb2abab8e04b9691f6e6187d1bb81e41e1972546e045472665bf5df61679d963c9fbf52d84e6fa4f650f7007918a496dac57ee031868fc1a71c5ff982311e641c67cd830a21b0a87f781b054f8ee6fab6536dd1a51e8df99f00acbe4bc03b5532e968566ca7d0984ab68d7d57b297b84c0c9133d53e798be88f7e8e2868a137d99df0bf72658221b4af41d853c8d570354899b8e19abf836ba664d5d846d40911e6085c0eebadee731ca4299082606141b0307033ba06b4d9fa3491d44dca805ebfba7c10ea683ca2cf4f344c6d967e7a7f9785bb566d8fb5390ff4425de8930494b592102db82529331ff6acfcb4c4f91a56029e058d9a49d1932cde184c2e9603705aa4b7785830027ce93bab4433822ad8c3db8112cce9bbd8fdaf8abfedf9e4a5a077e2430fb3a2030d2988aa19c32f95f630dab174a7c5ede445cf68d348c43d9c9d0e96d822db301b3a316edce9f4c7f712bbed1bcbbf1b67cecf49749357330922115d6dff6a0c1a4c307aa9703651904faab27c05c44996a987da9142f115ab8b328456f4cccd7ee803f10510450b8ab88d38c124b3a2286b865f9d938b0378c0535d6df682a56f2662744fe89cca089b31831303b7b672d1890f3bd173c9a38cc3280b99aa32eb8e4fe6edd2787c0358c59c1e58ca1a80994dce109b17d0ac006ad179f7216d6c78498a96400aee1f8e827dc3dc33de764d48d2c018472b914e8e35346280125a1e14cb6929dd84043bc3e6e321236c5885be5ae30baa64c6771aae2397b44f5c167f5d7f5e7715f3b1390e568ba1cb8614daa5a04822ab402ecf14cafeefda63cc4909bdc7213fd7f6ce5c147f7d47141f5c244b8f959f55fccb240d8a2c46ec224fb3688e05aca20d7684c4c9f5496e82eac6b648308829dfbf4ea9ccfdc4c2ae4e1db457c1d247321af32c7353c54fb006670d6ddec916ab6935b83940b8f2b7528115f0005ca9964d4cfd6ea341f13062b8a73951f336b06bc9cdca90350e2569415b4863a69fe1064e109b17385a542f86bf8ac237ee68dae750cd99a26e486ebe045835cfb146c0ed3d205bf646b24c529b7c4866fd0a3c71f1e0805d6ff8ada9137149b85f4c54430f2e9612e7a7e8952a28e45a94efa40089b27158b9c51b3dd562a22f1f1de5aa635ca7a991baff13611313092620695e3889aa977782c89f9ebb9f254a45bb6a5d9b911bb97c1978a0c0387ce38e6e268d17fb6782bf638fa67668587bd70e980ec8632af677e23dad4c34a6238450863766cc0373f62c038ae6de27b9049034f66eb9e20a9217216678945d6f55c9f21507a36e00811ee3510134d6dbd19985017755a886c101c6156c24097ebbf3bb4b687bbe8d21ab0c28dd8ae243e163e7cf921327de9500fb834d5d0e31d2665c42dc6995205e45359705964df07ba19c0b046fc20ef4a70c51905cad9004a42ee4c0c6cb1ca8279c3b384751012e8d4f74a997f32ef808e97b863aed44227460dcb96182a0368ed567a2a5e8b25a8bc25853cdf1f107942cd8ed334e308aef5ea284ca1421da4595546b013398a99e2d3a6c6820e5c05489b7e6e63073d97bf0ccdeaeec39cd4882"}) [ 666.699779][ T36] audit: type=1800 audit(1630587118.922:244): pid=4515 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.0" name="bus" dev="sda1" ino=15554 res=0 errno=0 12:51:59 executing program 2: setreuid(0x0, 0xee01) r0 = socket$inet6_udplite(0xa, 0x2, 0x88) ioctl$sock_ipv6_tunnel_SIOCADDPRL(r0, 0x8923, &(0x7f0000000400)={'syztnl1\x00', 0x0}) [ 666.906608][T10431] usb 5-1: new high-speed USB device number 6 using dummy_hcd [ 666.966189][ T36] audit: type=1800 audit(1630587118.942:245): pid=4518 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=15569 res=0 errno=0 [ 666.975886][ T4550] loop5: detected capacity change from 0 to 256 12:51:59 executing program 2: setreuid(0x0, 0xee01) r0 = socket$inet6_udplite(0xa, 0x2, 0x88) ioctl$sock_ipv6_tunnel_SIOCADDPRL(r0, 0x8923, &(0x7f0000000400)={'syztnl1\x00', 0x0}) 12:51:59 executing program 1: perf_event_open(&(0x7f0000000240)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 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, 0x1, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) clone(0x2000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = openat$sysctl(0xffffffffffffff9c, &(0x7f0000000140)='/proc/sys/vm/compact_memory\x00', 0x1, 0x0) write$sysctl(r0, 0x0, 0x0) fcntl$F_SET_FILE_RW_HINT(0xffffffffffffffff, 0x40e, 0x0) socket$inet6_udp(0xa, 0x2, 0x0) sendmmsg$inet6(0xffffffffffffffff, 0x0, 0x0, 0x0) clone(0x0, 0x0, 0x0, 0x0, 0x0) ioctl$sock_inet6_SIOCSIFADDR(0xffffffffffffffff, 0x89a1, &(0x7f0000000300)={@local, 0x6a}) ioctl$sock_inet6_SIOCADDRT(0xffffffffffffffff, 0x89a0, 0x0) ioctl$BTRFS_IOC_GET_SUBVOL_INFO(0xffffffffffffffff, 0x81f8943c, &(0x7f00000004c0)={0x0, ""/256, 0x0, 0x0}) ioctl$BTRFS_IOC_GET_SUBVOL_ROOTREF(0xffffffffffffffff, 0xd000943d, 0x0) ioctl$BTRFS_IOC_GET_SUBVOL_ROOTREF(0xffffffffffffffff, 0xd000943d, 0x0) ioctl$BTRFS_IOC_INO_LOOKUP_USER(r0, 0xd000943e, &(0x7f0000055bc0)={r1, 0x0, "0cfdaaac6fecfffa6f6012a46d05be7a27d7438af87c5396e7967d1e3a024128c5f6ab9f1a4c1c5cc760532b5e4e67fc8f39a5d958144b2cecba06634a9c45b3c7320316d78cca46727dee5810fae4b4c8ba40b5f44b03e85802442873060b45c1957b1f64401db47a12acfc4bfe301f321e219e01cd37711c02518d48da4e9a73040a9b891102d632c626494f6c602619c23a0129b96001696398b0fb16fac5597810309d4e6073cd73d65b24b936949c784953cf9b886acb47d98ecceb04bf873a2f3150d095c152f2bee83af57d9535e42425861ed51ff86ba3a92d1939f0b892ad77af21c193f7d1f66212abca5631a2c0c35eb41b1b479e9e2f7dc4bb65", "adc225bde6f4bc3c828999b1fd20ab6afd34dc2c8bb3d6dc4019f943639bd1afa21d8d4e07ecd1e5227075b5c40e967ac7a825748a18aae68abed79d47d8687e820796869ebcf94b49baef3f578513e5cc5c3588b94eb39005761d2bc410cda5182b307099867ee48a06c9235ffd507ff90bb3d8ce380c867c7f1f7b1540684c1907c74db8946b0eb89d3b0ac840ab628aab1d00048cc878529c964aae6e5a04dfa7da027fbac3ea4a4a1a51976c6c6c40ca35afe570931a58f682749be82c9cd95b1a27f0cfc75a5955ee2d510288748578f384f9ff105d02e8ce868cd652030eeeeaec788c7a6549e6e8bf31aeada1cc179899e21067dbf4c02261db62b7fc2382bd8034ef7d2bd22e8288afbbed2746380b30f8364139771bd0fbd3bd8d9d179a388d8735451e171f284a868be27e48085c85d2a66ae1b6b8e5342991a62dfea84665029b5f4ad8cc2f87f0a013bde4cd004ee01a77ffc0784cad4c552fbf55b85b30f81a6157fd0b3498539c53589e947ec6582f049c1e8c47f2e856a8f09945270f9f2f8c38e4cbe71c0b4ee542a52e52f43a729ace5855e2efd1fb44c13a16756372827a20894c804b1268ae10f92baac25b81ffec5d50555f122ce88cd181e8e929f81d90665626a1a6b90aca9ea7938c44f22054a234a488a0560c23fd977ac9b6bf265aad6e48f5a04e10532dc84feb56dc242a6160e0ae19aabfde3e1a770c6656e7c200adf7b6fe54ac0bcbbf0b274b7cc80cf8bd334210eaeb1e7717cdcd83ebf52a746d986631b8e2b22336705786f2d8ef4c315818031839592d69caf07ca49cccf362823b66cb516a8cb2c462aca0398fc79d88950e14cfc0800a8ae6429d57fa885a294acef8bf2df331e5e6e3cff6a271f74e9833244bf6752be286b32915260c94420c007fd07098bebab1284a1516f6bc682ef573cc67493bb4f0b033bee48948953a74e5e1101e6f9f2fb225138096a778445cdf0dc63b299b4349d9668af22774b55d63ace197845ab722357e991086d23ce10e0624d165f44b20af01d9f2de3f6dc94bb897cf1b977f557e3878f644b9f763fa53f0fb07cbcea61ac66f757cb1781a851700a874c95d7cfa703fb98321929f2bf08566e6e7fbf613d62262e6eb8445995f71966a9bc7cd9348f71342f3243d83bcf0a00d23e9e4005822d635f18ac7b0b90571c603ac00e380908c15c35d9e1ec874ec4a32f95129cc0bbd4a253851fb3c15f98b3a831d84d6cf155956fd085b95d7c82cbf6c1c29ee0ec19941d52315a294ffd2b0b52c1d0bcbdef1c86b9da7adce18df24bd4c8794eee3264359cf0830b0344989950b28337e5cd6f5e18fa4a436c9799f9849137d108bcb3fcbe0af37ac5bbaf0f4734d7585163a195c0c05534526be94fae6ae6e6265f7a2dd8ac650ab5223592fbebb7e5a2ed4ce11680d0df2ae447f0a01d09fc1c4768fcb5f120b4c1ca5ca2650a60723bfcbdbc3a50211e882915df355998ad696df24c84baaf58e2cfa722bee17687957066f8bda51bc5d0811345287f3eef6665b3893734ed6e9b9eff87ac5092bba82b6e30a34878ff820e8d26a02e7a6813d84ccc2b14a299434f7717e751a36c5c9f08c36233c1ab32cc758bd6e13af4a3cadc087b6ea0db80e3884465ff4183a3f1ab245ed5c6fd0fec9c22c59c9e9fe2d602d2f37ee113a80dd41d05e85165b8c6bbb526d9ec9b0bbbf30cb326222bcd98620c3da4fd29867ae60826840b5ef07da6373ef2ba6add73d41a31e8874821959471adcdc75eb04e070bc44fcc5641ecd259851572e9ae607140a637c9f07a2c30e43f6491e2b624e743130145035683dbbebab6dd94776b8e91400b730fa4a3381382751e4a86ddc488029d3339a5d681b05d651cfc7f3214593dbeff05a58967438d793e98b79a0908ad0bf6be53a20529c8ec63ed2f184be9f948b78a136332ffe8f4c87386cea464f6473275f045f166ceda1cf907a1bf368924b3d98acb474d1cf82aeb01ec88f2651b70bc28d30d2fd0a72dbaec631216847b717ef7031a57af5a762e0970175c210d9597614f1becb4dff63fd84b3d693fa2b91d3a5b2a40c4da9b4c33cf5424e50093238152f84291f6f279ac5261b7cac564f778949af868992bfa57f88f36ec129545274e2c4e4c18aab8eca289dbd44d9eba88a6227f4a0810862e46f9d1f3396fbfbde98a59ee89b80e8a501e6be44ae25dc01a7089b9be219340266ac5d62753c463464908d3e7a970a6702d62f2e97359891ff45a6cb27fc22eb4d50044e5a4a1e2f26a8dd46e48697d0f8ab915a6f80305bc9ebb2ae9a135a77bcab0f459caf386c12f7d401a1340ac9cadd9be8ef49bd3f28276217e32ffc8aec47e180fac5959e1b404f238ce0b7c1531a161940ad721dc6c4454be15c949ebfabe772727199a5533bd90185a082c9696b78aab75b97fbe0b46f15769398f5f6324cae30f05bc432e8c749685de08b95b3b061ff546ee5d6b63a132c2835d3496d7a71c5918f913b8e9de3f863bd6e41b44c37ab2882b3a211fbd3d3c42c6c0cf9fb425b35771446b494936a32c322143bd0815552d482fe5b7fedba34e79705844efff99d2db6641bf7c7418ff172430acae6d6f855a07b7e6c69b4669bebd7bf1b2bf3fb5466b79896fdf9c2e32aff57b380ed62ece23e6a9e26640fe8e54529dba6aba5e96d17b5962088e1891261d0abc67596fa6bed4b1f26e54aa2e6114b076e1b89a6265b2dfdb3e6ab231ed07f22d171551d2c135417e30c18595752ddead58425e7927062530c8ab34d195c5e4072eb13a8cdd551cb2689bd0d6d0fb9d0ebd1165ff6114da111e5060db3e95fc498ecc99d0f3904b84af7187ca81abb04676cc1e29fb8d4c1aceedbee67f5b2b43188b401c036b6844446d9fabfe404c52691223d73716e5efa37d149df439ff426d42fda2ab852023e472d6fb865638cdab38d680306277aef1454f90eb28230a54f70267665eba48a86e70f7965b2cbf43a296d37646040f6154331c4899403f4179c86b68dac3918055ca652c71f8a4a7ce9408487dc5239a64cb4e9cc046e8acb87a69175b250793abde3efbfbf322102bcca5efc7a8999bdefb1a4bd407a9ea4b41ba66b01f925b00897706fd4ce7c1b8f8544d4f09afc69a4e95103e4385a56b581b07d2311ed1fe52b09c46ba3dc212380bac5aa536d5a9386d84aaba1bf348f56871d73648541e291fafacbdfbf5d8167b8508827442aaedacfc230d44414dfdfa863fd20a3088279ad13dc2526a3225a55fb10b809e4c9a2642a5cae7c81281d1d27e184d48ecfc63f128f4d25172ff30d13809c6a9c28b8046c15c58b2e22733eba403ba7174a27437b2cf3f636de02620503cf9ced4455502eb2ea771dbddc0f48603413bb41af3dbe84d75f298eb0cc6b223fa34bc87fbb8d98a1e09c506c3ee006ca0c6d8ee4ba6e1a036727f93e0bac6d7992092b3027f98aa50819575c46dc68e43e0059db8863d86c6e9af91bd33f02fff3e7933397c82355bbde0871c3ae7317fe0b51892e7bde8ae4003f22986614439acea8f88dda703119731b8f6d05e4d038b7fc7a9823511abd49dbb5b2b51b274a316401617a1d9c51157bae7b0c686b345c83062cadad06596afc71500bb60aab56569cd50c534e103a4bef2fa7c73641c6f136b21dfb478093e01f2f6bc9f36adb9b83af9fd72739eeb43f2c11cbca938318d0d3bf707d314d10c12b137ced298206b11cf52f5e7caa389e391989471576e7043a54f4d97b995a304e7ea75b6be40421f2dcb2abab8e04b9691f6e6187d1bb81e41e1972546e045472665bf5df61679d963c9fbf52d84e6fa4f650f7007918a496dac57ee031868fc1a71c5ff982311e641c67cd830a21b0a87f781b054f8ee6fab6536dd1a51e8df99f00acbe4bc03b5532e968566ca7d0984ab68d7d57b297b84c0c9133d53e798be88f7e8e2868a137d99df0bf72658221b4af41d853c8d570354899b8e19abf836ba664d5d846d40911e6085c0eebadee731ca4299082606141b0307033ba06b4d9fa3491d44dca805ebfba7c10ea683ca2cf4f344c6d967e7a7f9785bb566d8fb5390ff4425de8930494b592102db82529331ff6acfcb4c4f91a56029e058d9a49d1932cde184c2e9603705aa4b7785830027ce93bab4433822ad8c3db8112cce9bbd8fdaf8abfedf9e4a5a077e2430fb3a2030d2988aa19c32f95f630dab174a7c5ede445cf68d348c43d9c9d0e96d822db301b3a316edce9f4c7f712bbed1bcbbf1b67cecf49749357330922115d6dff6a0c1a4c307aa9703651904faab27c05c44996a987da9142f115ab8b328456f4cccd7ee803f10510450b8ab88d38c124b3a2286b865f9d938b0378c0535d6df682a56f2662744fe89cca089b31831303b7b672d1890f3bd173c9a38cc3280b99aa32eb8e4fe6edd2787c0358c59c1e58ca1a80994dce109b17d0ac006ad179f7216d6c78498a96400aee1f8e827dc3dc33de764d48d2c018472b914e8e35346280125a1e14cb6929dd84043bc3e6e321236c5885be5ae30baa64c6771aae2397b44f5c167f5d7f5e7715f3b1390e568ba1cb8614daa5a04822ab402ecf14cafeefda63cc4909bdc7213fd7f6ce5c147f7d47141f5c244b8f959f55fccb240d8a2c46ec224fb3688e05aca20d7684c4c9f5496e82eac6b648308829dfbf4ea9ccfdc4c2ae4e1db457c1d247321af32c7353c54fb006670d6ddec916ab6935b83940b8f2b7528115f0005ca9964d4cfd6ea341f13062b8a73951f336b06bc9cdca90350e2569415b4863a69fe1064e109b17385a542f86bf8ac237ee68dae750cd99a26e486ebe045835cfb146c0ed3d205bf646b24c529b7c4866fd0a3c71f1e0805d6ff8ada9137149b85f4c54430f2e9612e7a7e8952a28e45a94efa40089b27158b9c51b3dd562a22f1f1de5aa635ca7a991baff13611313092620695e3889aa977782c89f9ebb9f254a45bb6a5d9b911bb97c1978a0c0387ce38e6e268d17fb6782bf638fa67668587bd70e980ec8632af677e23dad4c34a6238450863766cc0373f62c038ae6de27b9049034f66eb9e20a9217216678945d6f55c9f21507a36e00811ee3510134d6dbd19985017755a886c101c6156c24097ebbf3bb4b687bbe8d21ab0c28dd8ae243e163e7cf921327de9500fb834d5d0e31d2665c42dc6995205e45359705964df07ba19c0b046fc20ef4a70c51905cad9004a42ee4c0c6cb1ca8279c3b384751012e8d4f74a997f32ef808e97b863aed44227460dcb96182a0368ed567a2a5e8b25a8bc25853cdf1f107942cd8ed334e308aef5ea284ca1421da4595546b013398a99e2d3a6c6820e5c05489b7e6e63073d97bf0ccdeaeec39cd4882"}) [ 667.167607][T10431] usb 5-1: Using ep0 maxpacket: 8 [ 667.179471][ T36] audit: type=1800 audit(1630587118.952:246): pid=4518 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=15569 res=0 errno=0 [ 667.307407][T10431] usb 5-1: config 1 interface 0 altsetting 0 has 2 endpoint descriptors, different from the interface descriptor's value: 0 12:51:59 executing program 0: r0 = creat(&(0x7f0000000140)='./bus\x00', 0x0) fcntl$setstatus(r0, 0x4, 0x46002) io_setup(0x1, &(0x7f0000000180)=0x0) lseek(r0, 0x3c, 0x0) r2 = creat(&(0x7f0000000100)='./bus\x00', 0x0) r3 = open(&(0x7f0000000780)='./bus\x00', 0x14507e, 0x0) mmap(&(0x7f0000000000/0x600000)=nil, 0x600000, 0x7ffffe, 0x4002011, r3, 0x0) fallocate(r2, 0x0, 0x0, 0x1000f4) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r4 = openat$zero(0xffffffffffffff9c, &(0x7f0000001c00), 0x0, 0x0) readv(r4, &(0x7f0000000ac0)=[{0x0}, {0x0}, {&(0x7f0000000380)=""/74, 0x200003ca}], 0x3) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000040)='cpuset.effective_mems\x00', 0x0, 0x0) socket$bt_hidp(0x1f, 0x3, 0x6) fallocate(0xffffffffffffffff, 0x9, 0x0, 0x4) io_submit(r1, 0x45, &(0x7f0000000540)=[&(0x7f00000000c0)={0x101010, 0x400000000000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x377140be6b5ef4c7}]) 12:51:59 executing program 5: r0 = socket$packet(0x11, 0x3, 0x300) r1 = socket$nl_sock_diag(0x10, 0x3, 0x4) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f00000002c0)={'vlan1\x00', 0x0}) sendto$packet(r0, &(0x7f0000000000)="01efc12f1794e67fba55f75988a8", 0xe, 0x0, &(0x7f0000000040)={0x11, 0x0, r2, 0x1, 0x0, 0x6, @multicast}, 0x14) 12:51:59 executing program 2: r0 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) pipe(&(0x7f00000001c0)={0xffffffffffffffff, 0xffffffffffffffff}) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000300)={&(0x7f0000000000)=@newlink={0x44, 0x10, 0x0, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x24, 0x12, 0x0, 0x1, @bond={{0x9}, {0x14, 0x2, 0x0, 0x1, [@IFLA_BOND_ARP_VALIDATE={0x8}, @IFLA_BOND_AD_USER_PORT_KEY={0x6}]}}}]}, 0x44}}, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000200)={&(0x7f0000000000)=ANY=[@ANYBLOB="4800000010005fff000005000000000000000000", @ANYRES32=0x0, @ANYBLOB="0000000000000000280012800a00010076786c616e"], 0x3}}, 0x0) write$binfmt_misc(r2, &(0x7f0000000000)=ANY=[], 0xfffffecc) splice(r1, 0x0, r3, 0x0, 0x4ffe2, 0x0) 12:51:59 executing program 3: r0 = creat(&(0x7f0000000140)='./bus\x00', 0x0) fcntl$setstatus(r0, 0x4, 0x46002) io_setup(0x1, &(0x7f0000000180)=0x0) lseek(r0, 0x3c, 0x0) r2 = creat(&(0x7f0000000100)='./bus\x00', 0x0) r3 = open(&(0x7f0000000780)='./bus\x00', 0x14507e, 0x0) mmap(&(0x7f0000000000/0x600000)=nil, 0x600000, 0x7ffffe, 0x4002011, r3, 0x0) fallocate(r2, 0x0, 0x0, 0x1000f4) sendmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) r4 = openat$zero(0xffffffffffffff9c, &(0x7f0000001c00), 0x0, 0x0) readv(r4, &(0x7f0000000ac0)=[{0x0}, {0x0}, {&(0x7f0000000380)=""/74, 0x200003ca}], 0x3) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000040)='cpuset.effective_mems\x00', 0x0, 0x0) socket$bt_hidp(0x1f, 0x3, 0x6) fallocate(0xffffffffffffffff, 0x9, 0x0, 0x4) io_submit(r1, 0x45, &(0x7f0000000540)=[&(0x7f00000000c0)={0x101010, 0x400000000000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x377140be6b5ef4c7}]) 12:51:59 executing program 1: perf_event_open(&(0x7f0000000240)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 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, 0x1, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) clone(0x2000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = openat$sysctl(0xffffffffffffff9c, &(0x7f0000000140)='/proc/sys/vm/compact_memory\x00', 0x1, 0x0) write$sysctl(r0, 0x0, 0x0) fcntl$F_SET_FILE_RW_HINT(0xffffffffffffffff, 0x40e, 0x0) socket$inet6_udp(0xa, 0x2, 0x0) sendmmsg$inet6(0xffffffffffffffff, 0x0, 0x0, 0x0) clone(0x0, 0x0, 0x0, 0x0, 0x0) ioctl$sock_inet6_SIOCSIFADDR(0xffffffffffffffff, 0x89a1, &(0x7f0000000300)={@local, 0x6a}) ioctl$sock_inet6_SIOCADDRT(0xffffffffffffffff, 0x89a0, 0x0) ioctl$BTRFS_IOC_GET_SUBVOL_INFO(0xffffffffffffffff, 0x81f8943c, &(0x7f00000004c0)={0x0, ""/256, 0x0, 0x0}) ioctl$BTRFS_IOC_GET_SUBVOL_ROOTREF(0xffffffffffffffff, 0xd000943d, 0x0) ioctl$BTRFS_IOC_GET_SUBVOL_ROOTREF(0xffffffffffffffff, 0xd000943d, 0x0) ioctl$BTRFS_IOC_INO_LOOKUP_USER(r0, 0xd000943e, &(0x7f0000055bc0)={r1, 0x0, "0cfdaaac6fecfffa6f6012a46d05be7a27d7438af87c5396e7967d1e3a024128c5f6ab9f1a4c1c5cc760532b5e4e67fc8f39a5d958144b2cecba06634a9c45b3c7320316d78cca46727dee5810fae4b4c8ba40b5f44b03e85802442873060b45c1957b1f64401db47a12acfc4bfe301f321e219e01cd37711c02518d48da4e9a73040a9b891102d632c626494f6c602619c23a0129b96001696398b0fb16fac5597810309d4e6073cd73d65b24b936949c784953cf9b886acb47d98ecceb04bf873a2f3150d095c152f2bee83af57d9535e42425861ed51ff86ba3a92d1939f0b892ad77af21c193f7d1f66212abca5631a2c0c35eb41b1b479e9e2f7dc4bb65", "adc225bde6f4bc3c828999b1fd20ab6afd34dc2c8bb3d6dc4019f943639bd1afa21d8d4e07ecd1e5227075b5c40e967ac7a825748a18aae68abed79d47d8687e820796869ebcf94b49baef3f578513e5cc5c3588b94eb39005761d2bc410cda5182b307099867ee48a06c9235ffd507ff90bb3d8ce380c867c7f1f7b1540684c1907c74db8946b0eb89d3b0ac840ab628aab1d00048cc878529c964aae6e5a04dfa7da027fbac3ea4a4a1a51976c6c6c40ca35afe570931a58f682749be82c9cd95b1a27f0cfc75a5955ee2d510288748578f384f9ff105d02e8ce868cd652030eeeeaec788c7a6549e6e8bf31aeada1cc179899e21067dbf4c02261db62b7fc2382bd8034ef7d2bd22e8288afbbed2746380b30f8364139771bd0fbd3bd8d9d179a388d8735451e171f284a868be27e48085c85d2a66ae1b6b8e5342991a62dfea84665029b5f4ad8cc2f87f0a013bde4cd004ee01a77ffc0784cad4c552fbf55b85b30f81a6157fd0b3498539c53589e947ec6582f049c1e8c47f2e856a8f09945270f9f2f8c38e4cbe71c0b4ee542a52e52f43a729ace5855e2efd1fb44c13a16756372827a20894c804b1268ae10f92baac25b81ffec5d50555f122ce88cd181e8e929f81d90665626a1a6b90aca9ea7938c44f22054a234a488a0560c23fd977ac9b6bf265aad6e48f5a04e10532dc84feb56dc242a6160e0ae19aabfde3e1a770c6656e7c200adf7b6fe54ac0bcbbf0b274b7cc80cf8bd334210eaeb1e7717cdcd83ebf52a746d986631b8e2b22336705786f2d8ef4c315818031839592d69caf07ca49cccf362823b66cb516a8cb2c462aca0398fc79d88950e14cfc0800a8ae6429d57fa885a294acef8bf2df331e5e6e3cff6a271f74e9833244bf6752be286b32915260c94420c007fd07098bebab1284a1516f6bc682ef573cc67493bb4f0b033bee48948953a74e5e1101e6f9f2fb225138096a778445cdf0dc63b299b4349d9668af22774b55d63ace197845ab722357e991086d23ce10e0624d165f44b20af01d9f2de3f6dc94bb897cf1b977f557e3878f644b9f763fa53f0fb07cbcea61ac66f757cb1781a851700a874c95d7cfa703fb98321929f2bf08566e6e7fbf613d62262e6eb8445995f71966a9bc7cd9348f71342f3243d83bcf0a00d23e9e4005822d635f18ac7b0b90571c603ac00e380908c15c35d9e1ec874ec4a32f95129cc0bbd4a253851fb3c15f98b3a831d84d6cf155956fd085b95d7c82cbf6c1c29ee0ec19941d52315a294ffd2b0b52c1d0bcbdef1c86b9da7adce18df24bd4c8794eee3264359cf0830b0344989950b28337e5cd6f5e18fa4a436c9799f9849137d108bcb3fcbe0af37ac5bbaf0f4734d7585163a195c0c05534526be94fae6ae6e6265f7a2dd8ac650ab5223592fbebb7e5a2ed4ce11680d0df2ae447f0a01d09fc1c4768fcb5f120b4c1ca5ca2650a60723bfcbdbc3a50211e882915df355998ad696df24c84baaf58e2cfa722bee17687957066f8bda51bc5d0811345287f3eef6665b3893734ed6e9b9eff87ac5092bba82b6e30a34878ff820e8d26a02e7a6813d84ccc2b14a299434f7717e751a36c5c9f08c36233c1ab32cc758bd6e13af4a3cadc087b6ea0db80e3884465ff4183a3f1ab245ed5c6fd0fec9c22c59c9e9fe2d602d2f37ee113a80dd41d05e85165b8c6bbb526d9ec9b0bbbf30cb326222bcd98620c3da4fd29867ae60826840b5ef07da6373ef2ba6add73d41a31e8874821959471adcdc75eb04e070bc44fcc5641ecd259851572e9ae607140a637c9f07a2c30e43f6491e2b624e743130145035683dbbebab6dd94776b8e91400b730fa4a3381382751e4a86ddc488029d3339a5d681b05d651cfc7f3214593dbeff05a58967438d793e98b79a0908ad0bf6be53a20529c8ec63ed2f184be9f948b78a136332ffe8f4c87386cea464f6473275f045f166ceda1cf907a1bf368924b3d98acb474d1cf82aeb01ec88f2651b70bc28d30d2fd0a72dbaec631216847b717ef7031a57af5a762e0970175c210d9597614f1becb4dff63fd84b3d693fa2b91d3a5b2a40c4da9b4c33cf5424e50093238152f84291f6f279ac5261b7cac564f778949af868992bfa57f88f36ec129545274e2c4e4c18aab8eca289dbd44d9eba88a6227f4a0810862e46f9d1f3396fbfbde98a59ee89b80e8a501e6be44ae25dc01a7089b9be219340266ac5d62753c463464908d3e7a970a6702d62f2e97359891ff45a6cb27fc22eb4d50044e5a4a1e2f26a8dd46e48697d0f8ab915a6f80305bc9ebb2ae9a135a77bcab0f459caf386c12f7d401a1340ac9cadd9be8ef49bd3f28276217e32ffc8aec47e180fac5959e1b404f238ce0b7c1531a161940ad721dc6c4454be15c949ebfabe772727199a5533bd90185a082c9696b78aab75b97fbe0b46f15769398f5f6324cae30f05bc432e8c749685de08b95b3b061ff546ee5d6b63a132c2835d3496d7a71c5918f913b8e9de3f863bd6e41b44c37ab2882b3a211fbd3d3c42c6c0cf9fb425b35771446b494936a32c322143bd0815552d482fe5b7fedba34e79705844efff99d2db6641bf7c7418ff172430acae6d6f855a07b7e6c69b4669bebd7bf1b2bf3fb5466b79896fdf9c2e32aff57b380ed62ece23e6a9e26640fe8e54529dba6aba5e96d17b5962088e1891261d0abc67596fa6bed4b1f26e54aa2e6114b076e1b89a6265b2dfdb3e6ab231ed07f22d171551d2c135417e30c18595752ddead58425e7927062530c8ab34d195c5e4072eb13a8cdd551cb2689bd0d6d0fb9d0ebd1165ff6114da111e5060db3e95fc498ecc99d0f3904b84af7187ca81abb04676cc1e29fb8d4c1aceedbee67f5b2b43188b401c036b6844446d9fabfe404c52691223d73716e5efa37d149df439ff426d42fda2ab852023e472d6fb865638cdab38d680306277aef1454f90eb28230a54f70267665eba48a86e70f7965b2cbf43a296d37646040f6154331c4899403f4179c86b68dac3918055ca652c71f8a4a7ce9408487dc5239a64cb4e9cc046e8acb87a69175b250793abde3efbfbf322102bcca5efc7a8999bdefb1a4bd407a9ea4b41ba66b01f925b00897706fd4ce7c1b8f8544d4f09afc69a4e95103e4385a56b581b07d2311ed1fe52b09c46ba3dc212380bac5aa536d5a9386d84aaba1bf348f56871d73648541e291fafacbdfbf5d8167b8508827442aaedacfc230d44414dfdfa863fd20a3088279ad13dc2526a3225a55fb10b809e4c9a2642a5cae7c81281d1d27e184d48ecfc63f128f4d25172ff30d13809c6a9c28b8046c15c58b2e22733eba403ba7174a27437b2cf3f636de02620503cf9ced4455502eb2ea771dbddc0f48603413bb41af3dbe84d75f298eb0cc6b223fa34bc87fbb8d98a1e09c506c3ee006ca0c6d8ee4ba6e1a036727f93e0bac6d7992092b3027f98aa50819575c46dc68e43e0059db8863d86c6e9af91bd33f02fff3e7933397c82355bbde0871c3ae7317fe0b51892e7bde8ae4003f22986614439acea8f88dda703119731b8f6d05e4d038b7fc7a9823511abd49dbb5b2b51b274a316401617a1d9c51157bae7b0c686b345c83062cadad06596afc71500bb60aab56569cd50c534e103a4bef2fa7c73641c6f136b21dfb478093e01f2f6bc9f36adb9b83af9fd72739eeb43f2c11cbca938318d0d3bf707d314d10c12b137ced298206b11cf52f5e7caa389e391989471576e7043a54f4d97b995a304e7ea75b6be40421f2dcb2abab8e04b9691f6e6187d1bb81e41e1972546e045472665bf5df61679d963c9fbf52d84e6fa4f650f7007918a496dac57ee031868fc1a71c5ff982311e641c67cd830a21b0a87f781b054f8ee6fab6536dd1a51e8df99f00acbe4bc03b5532e968566ca7d0984ab68d7d57b297b84c0c9133d53e798be88f7e8e2868a137d99df0bf72658221b4af41d853c8d570354899b8e19abf836ba664d5d846d40911e6085c0eebadee731ca4299082606141b0307033ba06b4d9fa3491d44dca805ebfba7c10ea683ca2cf4f344c6d967e7a7f9785bb566d8fb5390ff4425de8930494b592102db82529331ff6acfcb4c4f91a56029e058d9a49d1932cde184c2e9603705aa4b7785830027ce93bab4433822ad8c3db8112cce9bbd8fdaf8abfedf9e4a5a077e2430fb3a2030d2988aa19c32f95f630dab174a7c5ede445cf68d348c43d9c9d0e96d822db301b3a316edce9f4c7f712bbed1bcbbf1b67cecf49749357330922115d6dff6a0c1a4c307aa9703651904faab27c05c44996a987da9142f115ab8b328456f4cccd7ee803f10510450b8ab88d38c124b3a2286b865f9d938b0378c0535d6df682a56f2662744fe89cca089b31831303b7b672d1890f3bd173c9a38cc3280b99aa32eb8e4fe6edd2787c0358c59c1e58ca1a80994dce109b17d0ac006ad179f7216d6c78498a96400aee1f8e827dc3dc33de764d48d2c018472b914e8e35346280125a1e14cb6929dd84043bc3e6e321236c5885be5ae30baa64c6771aae2397b44f5c167f5d7f5e7715f3b1390e568ba1cb8614daa5a04822ab402ecf14cafeefda63cc4909bdc7213fd7f6ce5c147f7d47141f5c244b8f959f55fccb240d8a2c46ec224fb3688e05aca20d7684c4c9f5496e82eac6b648308829dfbf4ea9ccfdc4c2ae4e1db457c1d247321af32c7353c54fb006670d6ddec916ab6935b83940b8f2b7528115f0005ca9964d4cfd6ea341f13062b8a73951f336b06bc9cdca90350e2569415b4863a69fe1064e109b17385a542f86bf8ac237ee68dae750cd99a26e486ebe045835cfb146c0ed3d205bf646b24c529b7c4866fd0a3c71f1e0805d6ff8ada9137149b85f4c54430f2e9612e7a7e8952a28e45a94efa40089b27158b9c51b3dd562a22f1f1de5aa635ca7a991baff13611313092620695e3889aa977782c89f9ebb9f254a45bb6a5d9b911bb97c1978a0c0387ce38e6e268d17fb6782bf638fa67668587bd70e980ec8632af677e23dad4c34a6238450863766cc0373f62c038ae6de27b9049034f66eb9e20a9217216678945d6f55c9f21507a36e00811ee3510134d6dbd19985017755a886c101c6156c24097ebbf3bb4b687bbe8d21ab0c28dd8ae243e163e7cf921327de9500fb834d5d0e31d2665c42dc6995205e45359705964df07ba19c0b046fc20ef4a70c51905cad9004a42ee4c0c6cb1ca8279c3b384751012e8d4f74a997f32ef808e97b863aed44227460dcb96182a0368ed567a2a5e8b25a8bc25853cdf1f107942cd8ed334e308aef5ea284ca1421da4595546b013398a99e2d3a6c6820e5c05489b7e6e63073d97bf0ccdeaeec39cd4882"}) [ 667.509311][ T36] audit: type=1800 audit(1630587119.892:247): pid=4581 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=14564 res=0 errno=0 [ 667.540933][T10431] usb 5-1: New USB device found, idVendor=0525, idProduct=a4a1, bcdDevice= 0.40 12:51:59 executing program 1: perf_event_open(&(0x7f0000000240)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 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, 0x1, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) clone(0x2000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = openat$sysctl(0xffffffffffffff9c, &(0x7f0000000140)='/proc/sys/vm/compact_memory\x00', 0x1, 0x0) write$sysctl(r0, 0x0, 0x0) fcntl$F_SET_FILE_RW_HINT(0xffffffffffffffff, 0x40e, 0x0) socket$inet6_udp(0xa, 0x2, 0x0) sendmmsg$inet6(0xffffffffffffffff, 0x0, 0x0, 0x0) clone(0x0, 0x0, 0x0, 0x0, 0x0) ioctl$sock_inet6_SIOCSIFADDR(0xffffffffffffffff, 0x89a1, &(0x7f0000000300)={@local, 0x6a}) ioctl$sock_inet6_SIOCADDRT(0xffffffffffffffff, 0x89a0, 0x0) ioctl$BTRFS_IOC_GET_SUBVOL_INFO(0xffffffffffffffff, 0x81f8943c, &(0x7f00000004c0)={0x0, ""/256, 0x0, 0x0}) ioctl$BTRFS_IOC_GET_SUBVOL_ROOTREF(0xffffffffffffffff, 0xd000943d, 0x0) ioctl$BTRFS_IOC_GET_SUBVOL_ROOTREF(0xffffffffffffffff, 0xd000943d, 0x0) ioctl$BTRFS_IOC_INO_LOOKUP_USER(r0, 0xd000943e, &(0x7f0000055bc0)={r1, 0x0, "0cfdaaac6fecfffa6f6012a46d05be7a27d7438af87c5396e7967d1e3a024128c5f6ab9f1a4c1c5cc760532b5e4e67fc8f39a5d958144b2cecba06634a9c45b3c7320316d78cca46727dee5810fae4b4c8ba40b5f44b03e85802442873060b45c1957b1f64401db47a12acfc4bfe301f321e219e01cd37711c02518d48da4e9a73040a9b891102d632c626494f6c602619c23a0129b96001696398b0fb16fac5597810309d4e6073cd73d65b24b936949c784953cf9b886acb47d98ecceb04bf873a2f3150d095c152f2bee83af57d9535e42425861ed51ff86ba3a92d1939f0b892ad77af21c193f7d1f66212abca5631a2c0c35eb41b1b479e9e2f7dc4bb65", "adc225bde6f4bc3c828999b1fd20ab6afd34dc2c8bb3d6dc4019f943639bd1afa21d8d4e07ecd1e5227075b5c40e967ac7a825748a18aae68abed79d47d8687e820796869ebcf94b49baef3f578513e5cc5c3588b94eb39005761d2bc410cda5182b307099867ee48a06c9235ffd507ff90bb3d8ce380c867c7f1f7b1540684c1907c74db8946b0eb89d3b0ac840ab628aab1d00048cc878529c964aae6e5a04dfa7da027fbac3ea4a4a1a51976c6c6c40ca35afe570931a58f682749be82c9cd95b1a27f0cfc75a5955ee2d510288748578f384f9ff105d02e8ce868cd652030eeeeaec788c7a6549e6e8bf31aeada1cc179899e21067dbf4c02261db62b7fc2382bd8034ef7d2bd22e8288afbbed2746380b30f8364139771bd0fbd3bd8d9d179a388d8735451e171f284a868be27e48085c85d2a66ae1b6b8e5342991a62dfea84665029b5f4ad8cc2f87f0a013bde4cd004ee01a77ffc0784cad4c552fbf55b85b30f81a6157fd0b3498539c53589e947ec6582f049c1e8c47f2e856a8f09945270f9f2f8c38e4cbe71c0b4ee542a52e52f43a729ace5855e2efd1fb44c13a16756372827a20894c804b1268ae10f92baac25b81ffec5d50555f122ce88cd181e8e929f81d90665626a1a6b90aca9ea7938c44f22054a234a488a0560c23fd977ac9b6bf265aad6e48f5a04e10532dc84feb56dc242a6160e0ae19aabfde3e1a770c6656e7c200adf7b6fe54ac0bcbbf0b274b7cc80cf8bd334210eaeb1e7717cdcd83ebf52a746d986631b8e2b22336705786f2d8ef4c315818031839592d69caf07ca49cccf362823b66cb516a8cb2c462aca0398fc79d88950e14cfc0800a8ae6429d57fa885a294acef8bf2df331e5e6e3cff6a271f74e9833244bf6752be286b32915260c94420c007fd07098bebab1284a1516f6bc682ef573cc67493bb4f0b033bee48948953a74e5e1101e6f9f2fb225138096a778445cdf0dc63b299b4349d9668af22774b55d63ace197845ab722357e991086d23ce10e0624d165f44b20af01d9f2de3f6dc94bb897cf1b977f557e3878f644b9f763fa53f0fb07cbcea61ac66f757cb1781a851700a874c95d7cfa703fb98321929f2bf08566e6e7fbf613d62262e6eb8445995f71966a9bc7cd9348f71342f3243d83bcf0a00d23e9e4005822d635f18ac7b0b90571c603ac00e380908c15c35d9e1ec874ec4a32f95129cc0bbd4a253851fb3c15f98b3a831d84d6cf155956fd085b95d7c82cbf6c1c29ee0ec19941d52315a294ffd2b0b52c1d0bcbdef1c86b9da7adce18df24bd4c8794eee3264359cf0830b0344989950b28337e5cd6f5e18fa4a436c9799f9849137d108bcb3fcbe0af37ac5bbaf0f4734d7585163a195c0c05534526be94fae6ae6e6265f7a2dd8ac650ab5223592fbebb7e5a2ed4ce11680d0df2ae447f0a01d09fc1c4768fcb5f120b4c1ca5ca2650a60723bfcbdbc3a50211e882915df355998ad696df24c84baaf58e2cfa722bee17687957066f8bda51bc5d0811345287f3eef6665b3893734ed6e9b9eff87ac5092bba82b6e30a34878ff820e8d26a02e7a6813d84ccc2b14a299434f7717e751a36c5c9f08c36233c1ab32cc758bd6e13af4a3cadc087b6ea0db80e3884465ff4183a3f1ab245ed5c6fd0fec9c22c59c9e9fe2d602d2f37ee113a80dd41d05e85165b8c6bbb526d9ec9b0bbbf30cb326222bcd98620c3da4fd29867ae60826840b5ef07da6373ef2ba6add73d41a31e8874821959471adcdc75eb04e070bc44fcc5641ecd259851572e9ae607140a637c9f07a2c30e43f6491e2b624e743130145035683dbbebab6dd94776b8e91400b730fa4a3381382751e4a86ddc488029d3339a5d681b05d651cfc7f3214593dbeff05a58967438d793e98b79a0908ad0bf6be53a20529c8ec63ed2f184be9f948b78a136332ffe8f4c87386cea464f6473275f045f166ceda1cf907a1bf368924b3d98acb474d1cf82aeb01ec88f2651b70bc28d30d2fd0a72dbaec631216847b717ef7031a57af5a762e0970175c210d9597614f1becb4dff63fd84b3d693fa2b91d3a5b2a40c4da9b4c33cf5424e50093238152f84291f6f279ac5261b7cac564f778949af868992bfa57f88f36ec129545274e2c4e4c18aab8eca289dbd44d9eba88a6227f4a0810862e46f9d1f3396fbfbde98a59ee89b80e8a501e6be44ae25dc01a7089b9be219340266ac5d62753c463464908d3e7a970a6702d62f2e97359891ff45a6cb27fc22eb4d50044e5a4a1e2f26a8dd46e48697d0f8ab915a6f80305bc9ebb2ae9a135a77bcab0f459caf386c12f7d401a1340ac9cadd9be8ef49bd3f28276217e32ffc8aec47e180fac5959e1b404f238ce0b7c1531a161940ad721dc6c4454be15c949ebfabe772727199a5533bd90185a082c9696b78aab75b97fbe0b46f15769398f5f6324cae30f05bc432e8c749685de08b95b3b061ff546ee5d6b63a132c2835d3496d7a71c5918f913b8e9de3f863bd6e41b44c37ab2882b3a211fbd3d3c42c6c0cf9fb425b35771446b494936a32c322143bd0815552d482fe5b7fedba34e79705844efff99d2db6641bf7c7418ff172430acae6d6f855a07b7e6c69b4669bebd7bf1b2bf3fb5466b79896fdf9c2e32aff57b380ed62ece23e6a9e26640fe8e54529dba6aba5e96d17b5962088e1891261d0abc67596fa6bed4b1f26e54aa2e6114b076e1b89a6265b2dfdb3e6ab231ed07f22d171551d2c135417e30c18595752ddead58425e7927062530c8ab34d195c5e4072eb13a8cdd551cb2689bd0d6d0fb9d0ebd1165ff6114da111e5060db3e95fc498ecc99d0f3904b84af7187ca81abb04676cc1e29fb8d4c1aceedbee67f5b2b43188b401c036b6844446d9fabfe404c52691223d73716e5efa37d149df439ff426d42fda2ab852023e472d6fb865638cdab38d680306277aef1454f90eb28230a54f70267665eba48a86e70f7965b2cbf43a296d37646040f6154331c4899403f4179c86b68dac3918055ca652c71f8a4a7ce9408487dc5239a64cb4e9cc046e8acb87a69175b250793abde3efbfbf322102bcca5efc7a8999bdefb1a4bd407a9ea4b41ba66b01f925b00897706fd4ce7c1b8f8544d4f09afc69a4e95103e4385a56b581b07d2311ed1fe52b09c46ba3dc212380bac5aa536d5a9386d84aaba1bf348f56871d73648541e291fafacbdfbf5d8167b8508827442aaedacfc230d44414dfdfa863fd20a3088279ad13dc2526a3225a55fb10b809e4c9a2642a5cae7c81281d1d27e184d48ecfc63f128f4d25172ff30d13809c6a9c28b8046c15c58b2e22733eba403ba7174a27437b2cf3f636de02620503cf9ced4455502eb2ea771dbddc0f48603413bb41af3dbe84d75f298eb0cc6b223fa34bc87fbb8d98a1e09c506c3ee006ca0c6d8ee4ba6e1a036727f93e0bac6d7992092b3027f98aa50819575c46dc68e43e0059db8863d86c6e9af91bd33f02fff3e7933397c82355bbde0871c3ae7317fe0b51892e7bde8ae4003f22986614439acea8f88dda703119731b8f6d05e4d038b7fc7a9823511abd49dbb5b2b51b274a316401617a1d9c51157bae7b0c686b345c83062cadad06596afc71500bb60aab56569cd50c534e103a4bef2fa7c73641c6f136b21dfb478093e01f2f6bc9f36adb9b83af9fd72739eeb43f2c11cbca938318d0d3bf707d314d10c12b137ced298206b11cf52f5e7caa389e391989471576e7043a54f4d97b995a304e7ea75b6be40421f2dcb2abab8e04b9691f6e6187d1bb81e41e1972546e045472665bf5df61679d963c9fbf52d84e6fa4f650f7007918a496dac57ee031868fc1a71c5ff982311e641c67cd830a21b0a87f781b054f8ee6fab6536dd1a51e8df99f00acbe4bc03b5532e968566ca7d0984ab68d7d57b297b84c0c9133d53e798be88f7e8e2868a137d99df0bf72658221b4af41d853c8d570354899b8e19abf836ba664d5d846d40911e6085c0eebadee731ca4299082606141b0307033ba06b4d9fa3491d44dca805ebfba7c10ea683ca2cf4f344c6d967e7a7f9785bb566d8fb5390ff4425de8930494b592102db82529331ff6acfcb4c4f91a56029e058d9a49d1932cde184c2e9603705aa4b7785830027ce93bab4433822ad8c3db8112cce9bbd8fdaf8abfedf9e4a5a077e2430fb3a2030d2988aa19c32f95f630dab174a7c5ede445cf68d348c43d9c9d0e96d822db301b3a316edce9f4c7f712bbed1bcbbf1b67cecf49749357330922115d6dff6a0c1a4c307aa9703651904faab27c05c44996a987da9142f115ab8b328456f4cccd7ee803f10510450b8ab88d38c124b3a2286b865f9d938b0378c0535d6df682a56f2662744fe89cca089b31831303b7b672d1890f3bd173c9a38cc3280b99aa32eb8e4fe6edd2787c0358c59c1e58ca1a80994dce109b17d0ac006ad179f7216d6c78498a96400aee1f8e827dc3dc33de764d48d2c018472b914e8e35346280125a1e14cb6929dd84043bc3e6e321236c5885be5ae30baa64c6771aae2397b44f5c167f5d7f5e7715f3b1390e568ba1cb8614daa5a04822ab402ecf14cafeefda63cc4909bdc7213fd7f6ce5c147f7d47141f5c244b8f959f55fccb240d8a2c46ec224fb3688e05aca20d7684c4c9f5496e82eac6b648308829dfbf4ea9ccfdc4c2ae4e1db457c1d247321af32c7353c54fb006670d6ddec916ab6935b83940b8f2b7528115f0005ca9964d4cfd6ea341f13062b8a73951f336b06bc9cdca90350e2569415b4863a69fe1064e109b17385a542f86bf8ac237ee68dae750cd99a26e486ebe045835cfb146c0ed3d205bf646b24c529b7c4866fd0a3c71f1e0805d6ff8ada9137149b85f4c54430f2e9612e7a7e8952a28e45a94efa40089b27158b9c51b3dd562a22f1f1de5aa635ca7a991baff13611313092620695e3889aa977782c89f9ebb9f254a45bb6a5d9b911bb97c1978a0c0387ce38e6e268d17fb6782bf638fa67668587bd70e980ec8632af677e23dad4c34a6238450863766cc0373f62c038ae6de27b9049034f66eb9e20a9217216678945d6f55c9f21507a36e00811ee3510134d6dbd19985017755a886c101c6156c24097ebbf3bb4b687bbe8d21ab0c28dd8ae243e163e7cf921327de9500fb834d5d0e31d2665c42dc6995205e45359705964df07ba19c0b046fc20ef4a70c51905cad9004a42ee4c0c6cb1ca8279c3b384751012e8d4f74a997f32ef808e97b863aed44227460dcb96182a0368ed567a2a5e8b25a8bc25853cdf1f107942cd8ed334e308aef5ea284ca1421da4595546b013398a99e2d3a6c6820e5c05489b7e6e63073d97bf0ccdeaeec39cd4882"}) [ 667.569110][ T4588] netlink: 'syz-executor.2': attribute type 25 has an invalid length. [ 667.598498][T10431] usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 667.619250][ T36] audit: type=1800 audit(1630587119.892:248): pid=4581 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.3" name="bus" dev="sda1" ino=14564 res=0 errno=0 [ 667.659368][T10431] usb 5-1: Product: syz [ 667.696047][T10431] usb 5-1: Manufacturer: syz [ 667.728783][T10431] usb 5-1: SerialNumber: syz [ 667.807111][ T4531] raw-gadget gadget: fail, usb_ep_enable returned -22 [ 667.829409][ T36] audit: type=1800 audit(1630587119.942:249): pid=4587 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.0" name="bus" dev="sda1" ino=14628 res=0 errno=0 [ 667.837341][T10431] cdc_ether: probe of 5-1:1.0 failed with error -22 [ 667.899408][ T36] audit: type=1800 audit(1630587119.962:250): pid=4587 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed(directio) comm="syz-executor.0" name="bus" dev="sda1" ino=14628 res=0 errno=0 [ 668.061984][T10431] usb 5-1: USB disconnect, device number 6 [ 668.836711][ T4861] usb 5-1: new high-speed USB device number 7 using dummy_hcd [ 669.076360][ T4861] usb 5-1: Using ep0 maxpacket: 8 [ 669.196789][ T4861] usb 5-1: config 1 interface 0 altsetting 0 has 2 endpoint descriptors, different from the interface descriptor's value: 0 [ 669.366478][ T4861] usb 5-1: New USB device found, idVendor=0525, idProduct=a4a1, bcdDevice= 0.40 [ 669.375653][ T4861] usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 669.384709][ T4861] usb 5-1: Product: syz [ 669.389046][ T4861] usb 5-1: Manufacturer: syz [ 669.393670][ T4861] usb 5-1: SerialNumber: syz [ 669.427286][ T4531] raw-gadget gadget: fail, usb_ep_enable returned -22 [ 669.447538][ T4861] cdc_ether: probe of 5-1:1.0 failed with error -22 12:52:01 executing program 4: r0 = gettid() r1 = getpgid(0x0) prctl$PR_SET_PTRACER(0x59616d61, r1) clone(0x31838625fe, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) rt_sigtimedwait(&(0x7f00000000c0), 0x0, &(0x7f0000000040)={0x0, 0x1c9c380}, 0x8) ptrace$setopts(0x4206, r0, 0x0, 0x200044) wait4(0x0, 0x0, 0x0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000000)={0x1, &(0x7f0000000080)=[{0x6}]}) io_getevents(0x0, 0x0, 0x0, 0x0, 0x0) 12:52:01 executing program 5: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$jfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010000)="4a465331010000006076000000000000001000000c00030000020000090000000020000000092010000000000000000004000000180000000200000016000000320700000100000000010000000f000034000000cc", 0x55, 0x8000}, {&(0x7f0000010f00)="10c4645f010000000100000001000000040000000b000000002000000000000002", 0x21, 0xb1fc}], 0x0, &(0x7f000006d200)) 12:52:01 executing program 1: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000140)={0x2, 0x2000004e20, @broadcast}, 0x10) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='highspeed\x00', 0xa) sendto$inet(r0, 0x0, 0x0, 0x1000000020000000, &(0x7f0000000080)={0x2, 0x4e20, @dev={0xac, 0x14, 0x14, 0x12}}, 0x10) sendto$inet(r0, &(0x7f0000000240), 0xfffffd46, 0x81f4, 0x0, 0x1f4) 12:52:01 executing program 3: r0 = bpf$MAP_CREATE(0x0, &(0x7f0000000000)={0xe, 0x4, 0x4, 0x1, 0x0, 0x1}, 0x40) bpf$MAP_DELETE_ELEM(0x4, &(0x7f0000000100)={r0, &(0x7f0000000040)}, 0x20) 12:52:01 executing program 0: r0 = openat$rdma_cm(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) write$RDMA_USER_CM_CMD_CREATE_ID(r0, &(0x7f0000000080)={0x0, 0xa, 0xfa00, {0x0, &(0x7f0000000000)={0xffffffffffffffff}, 0x111}}, 0x20) write$RDMA_USER_CM_CMD_RESOLVE_IP(r0, &(0x7f0000000300)={0x3, 0x40, 0xfa00, {{0x6000000, 0x0, 0x0, @private1}, {0xa, 0x0, 0x0, @mcast2}, r1}}, 0x48) 12:52:01 executing program 2: r0 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) pipe(&(0x7f00000001c0)={0xffffffffffffffff, 0xffffffffffffffff}) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000300)={&(0x7f0000000000)=@newlink={0x44, 0x10, 0x0, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x24, 0x12, 0x0, 0x1, @bond={{0x9}, {0x14, 0x2, 0x0, 0x1, [@IFLA_BOND_ARP_VALIDATE={0x8}, @IFLA_BOND_AD_USER_PORT_KEY={0x6}]}}}]}, 0x44}}, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000200)={&(0x7f0000000000)=ANY=[@ANYBLOB="4800000010005fff000005000000000000000000", @ANYRES32=0x0, @ANYBLOB="0000000000000000280012800a00010076786c616e"], 0x3}}, 0x0) write$binfmt_misc(r2, &(0x7f0000000000)=ANY=[], 0xfffffecc) splice(r1, 0x0, r3, 0x0, 0x4ffe2, 0x0) [ 669.549237][T10139] usb 5-1: USB disconnect, device number 7 12:52:02 executing program 3: r0 = bpf$MAP_CREATE(0x0, &(0x7f0000000000)={0xe, 0x4, 0x4, 0x1, 0x0, 0x1}, 0x40) bpf$MAP_DELETE_ELEM(0x4, &(0x7f0000000100)={r0, &(0x7f0000000040)}, 0x20) 12:52:02 executing program 0: r0 = openat$rdma_cm(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) write$RDMA_USER_CM_CMD_CREATE_ID(r0, &(0x7f0000000080)={0x0, 0xa, 0xfa00, {0x0, &(0x7f0000000000)={0xffffffffffffffff}, 0x111}}, 0x20) write$RDMA_USER_CM_CMD_RESOLVE_IP(r0, &(0x7f0000000300)={0x3, 0x40, 0xfa00, {{0x6000000, 0x0, 0x0, @private1}, {0xa, 0x0, 0x0, @mcast2}, r1}}, 0x48) [ 669.609768][ T4637] loop5: detected capacity change from 0 to 177 [ 669.626128][ T4644] 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. [ 669.662668][ T4637] jfs_mount: dbMount failed w/rc = -5 12:52:02 executing program 3: r0 = bpf$MAP_CREATE(0x0, &(0x7f0000000000)={0xe, 0x4, 0x4, 0x1, 0x0, 0x1}, 0x40) bpf$MAP_DELETE_ELEM(0x4, &(0x7f0000000100)={r0, &(0x7f0000000040)}, 0x20) 12:52:02 executing program 4: r0 = gettid() r1 = getpgid(0x0) prctl$PR_SET_PTRACER(0x59616d61, r1) clone(0x31838625fe, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) rt_sigtimedwait(&(0x7f00000000c0), 0x0, &(0x7f0000000040)={0x0, 0x1c9c380}, 0x8) ptrace$setopts(0x4206, r0, 0x0, 0x200044) wait4(0x0, 0x0, 0x0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000000)={0x1, &(0x7f0000000080)=[{0x6}]}) io_getevents(0x0, 0x0, 0x0, 0x0, 0x0) [ 669.686649][ T4637] Mount JFS Failure: -5 [ 669.695442][ T4637] jfs_mount failed w/return code = -5 [ 669.709112][ T36] audit: type=1326 audit(1630587122.092:251): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=4650 comm="syz-executor.4" exe="/root/syz-executor.4" sig=31 arch=c000003e syscall=231 compat=0 ip=0x4665f9 code=0x0 12:52:02 executing program 0: r0 = openat$rdma_cm(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) write$RDMA_USER_CM_CMD_CREATE_ID(r0, &(0x7f0000000080)={0x0, 0xa, 0xfa00, {0x0, &(0x7f0000000000)={0xffffffffffffffff}, 0x111}}, 0x20) write$RDMA_USER_CM_CMD_RESOLVE_IP(r0, &(0x7f0000000300)={0x3, 0x40, 0xfa00, {{0x6000000, 0x0, 0x0, @private1}, {0xa, 0x0, 0x0, @mcast2}, r1}}, 0x48) 12:52:02 executing program 1: r0 = socket$inet6(0xa, 0x3, 0x7) connect$inet6(r0, &(0x7f00000000c0)={0xa, 0x0, 0x0, @loopback}, 0x1c) recvmsg(0xffffffffffffffff, &(0x7f00000017c0)={0x0, 0x0, &(0x7f0000001740)=[{0x0}, {0x0}, {&(0x7f0000000340)=""/132, 0x84}], 0x3}, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000340)=@newlink={0x20}, 0x20}}, 0x0) sendmmsg(r0, &(0x7f0000000480), 0x2e9, 0x0) [ 669.735744][ T4656] netlink: 'syz-executor.2': attribute type 25 has an invalid length. 12:52:02 executing program 0: r0 = openat$rdma_cm(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) write$RDMA_USER_CM_CMD_CREATE_ID(r0, &(0x7f0000000080)={0x0, 0xa, 0xfa00, {0x0, &(0x7f0000000000)={0xffffffffffffffff}, 0x111}}, 0x20) write$RDMA_USER_CM_CMD_RESOLVE_IP(r0, &(0x7f0000000300)={0x3, 0x40, 0xfa00, {{0x6000000, 0x0, 0x0, @private1}, {0xa, 0x0, 0x0, @mcast2}, r1}}, 0x48) 12:52:02 executing program 5: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$jfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010000)="4a465331010000006076000000000000001000000c00030000020000090000000020000000092010000000000000000004000000180000000200000016000000320700000100000000010000000f000034000000cc", 0x55, 0x8000}, {&(0x7f0000010f00)="10c4645f010000000100000001000000040000000b000000002000000000000002", 0x21, 0xb1fc}], 0x0, &(0x7f000006d200)) 12:52:02 executing program 4: r0 = gettid() r1 = getpgid(0x0) prctl$PR_SET_PTRACER(0x59616d61, r1) clone(0x31838625fe, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) rt_sigtimedwait(&(0x7f00000000c0), 0x0, &(0x7f0000000040)={0x0, 0x1c9c380}, 0x8) ptrace$setopts(0x4206, r0, 0x0, 0x200044) wait4(0x0, 0x0, 0x0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000000)={0x1, &(0x7f0000000080)=[{0x6}]}) io_getevents(0x0, 0x0, 0x0, 0x0, 0x0) 12:52:02 executing program 3: r0 = bpf$MAP_CREATE(0x0, &(0x7f0000000000)={0xe, 0x4, 0x4, 0x1, 0x0, 0x1}, 0x40) bpf$MAP_DELETE_ELEM(0x4, &(0x7f0000000100)={r0, &(0x7f0000000040)}, 0x20) [ 669.817196][ T36] audit: type=1326 audit(1630587122.202:252): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=4665 comm="syz-executor.4" exe="/root/syz-executor.4" sig=31 arch=c000003e syscall=202 compat=0 ip=0x4665f9 code=0x0 12:52:02 executing program 0: pipe(&(0x7f00000001c0)={0xffffffffffffffff}) r1 = socket$inet_udp(0x2, 0x2, 0x0) close(r1) openat$smackfs_ipv6host(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) splice(r0, 0x0, r1, 0x0, 0x4ffe2, 0x0) [ 669.942672][ T4682] loop5: detected capacity change from 0 to 177 [ 669.977605][ T4682] ERROR: (device loop5): xtSearch: XT_GETPAGE: xtree page corrupt [ 669.977605][ T4682] [ 670.006151][ T4682] ERROR: (device loop5): remounting filesystem as read-only [ 670.017350][ T4682] xtLookup: xtSearch returned -5 [ 670.022302][ T4682] read_mapping_page failed! [ 670.029696][ T4682] jfs_mount: diMount(ipaimap) failed w/rc = -5 [ 670.035965][ T4682] Mount JFS Failure: -5 [ 670.042433][ T4682] jfs_mount failed w/return code = -5 12:52:02 executing program 2: r0 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) pipe(&(0x7f00000001c0)={0xffffffffffffffff, 0xffffffffffffffff}) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000300)={&(0x7f0000000000)=@newlink={0x44, 0x10, 0x0, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x24, 0x12, 0x0, 0x1, @bond={{0x9}, {0x14, 0x2, 0x0, 0x1, [@IFLA_BOND_ARP_VALIDATE={0x8}, @IFLA_BOND_AD_USER_PORT_KEY={0x6}]}}}]}, 0x44}}, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000200)={&(0x7f0000000000)=ANY=[@ANYBLOB="4800000010005fff000005000000000000000000", @ANYRES32=0x0, @ANYBLOB="0000000000000000280012800a00010076786c616e"], 0x3}}, 0x0) write$binfmt_misc(r2, &(0x7f0000000000)=ANY=[], 0xfffffecc) splice(r1, 0x0, r3, 0x0, 0x4ffe2, 0x0) 12:52:02 executing program 1: r0 = socket$inet6(0xa, 0x3, 0x7) connect$inet6(r0, &(0x7f00000000c0)={0xa, 0x0, 0x0, @loopback}, 0x1c) recvmsg(0xffffffffffffffff, &(0x7f00000017c0)={0x0, 0x0, &(0x7f0000001740)=[{0x0}, {0x0}, {&(0x7f0000000340)=""/132, 0x84}], 0x3}, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000340)=@newlink={0x20}, 0x20}}, 0x0) sendmmsg(r0, &(0x7f0000000480), 0x2e9, 0x0) 12:52:02 executing program 3: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) 12:52:02 executing program 4: r0 = gettid() r1 = getpgid(0x0) prctl$PR_SET_PTRACER(0x59616d61, r1) clone(0x31838625fe, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) rt_sigtimedwait(&(0x7f00000000c0), 0x0, &(0x7f0000000040)={0x0, 0x1c9c380}, 0x8) ptrace$setopts(0x4206, r0, 0x0, 0x200044) wait4(0x0, 0x0, 0x0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000000)={0x1, &(0x7f0000000080)=[{0x6}]}) io_getevents(0x0, 0x0, 0x0, 0x0, 0x0) 12:52:02 executing program 0: pipe(&(0x7f00000001c0)={0xffffffffffffffff}) r1 = socket$inet_udp(0x2, 0x2, 0x0) close(r1) openat$smackfs_ipv6host(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) splice(r0, 0x0, r1, 0x0, 0x4ffe2, 0x0) 12:52:02 executing program 5: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$jfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010000)="4a465331010000006076000000000000001000000c00030000020000090000000020000000092010000000000000000004000000180000000200000016000000320700000100000000010000000f000034000000cc", 0x55, 0x8000}, {&(0x7f0000010f00)="10c4645f010000000100000001000000040000000b000000002000000000000002", 0x21, 0xb1fc}], 0x0, &(0x7f000006d200)) 12:52:02 executing program 0: pipe(&(0x7f00000001c0)={0xffffffffffffffff}) r1 = socket$inet_udp(0x2, 0x2, 0x0) close(r1) openat$smackfs_ipv6host(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) splice(r0, 0x0, r1, 0x0, 0x4ffe2, 0x0) 12:52:02 executing program 4: r0 = syz_init_net_socket$nfc_raw(0x27, 0x5, 0x0) read(r0, &(0x7f0000000000)=""/36, 0x24) 12:52:03 executing program 1: r0 = socket$inet6(0xa, 0x3, 0x7) connect$inet6(r0, &(0x7f00000000c0)={0xa, 0x0, 0x0, @loopback}, 0x1c) recvmsg(0xffffffffffffffff, &(0x7f00000017c0)={0x0, 0x0, &(0x7f0000001740)=[{0x0}, {0x0}, {&(0x7f0000000340)=""/132, 0x84}], 0x3}, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000340)=@newlink={0x20}, 0x20}}, 0x0) sendmmsg(r0, &(0x7f0000000480), 0x2e9, 0x0) [ 670.562871][ T4709] loop5: detected capacity change from 0 to 177 [ 670.581506][ T4718] netlink: 'syz-executor.2': attribute type 25 has an invalid length. 12:52:03 executing program 3: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) 12:52:03 executing program 4: r0 = syz_init_net_socket$nfc_raw(0x27, 0x5, 0x0) read(r0, &(0x7f0000000000)=""/36, 0x24) [ 670.619688][ T4709] ERROR: (device loop5): xtSearch: XT_GETPAGE: xtree page corrupt [ 670.619688][ T4709] 12:52:03 executing program 0: pipe(&(0x7f00000001c0)={0xffffffffffffffff}) r1 = socket$inet_udp(0x2, 0x2, 0x0) close(r1) openat$smackfs_ipv6host(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) splice(r0, 0x0, r1, 0x0, 0x4ffe2, 0x0) [ 670.660866][ T4709] ERROR: (device loop5): remounting filesystem as read-only [ 670.701563][ T4709] xtLookup: xtSearch returned -5 [ 670.741134][ T4709] read_mapping_page failed! [ 670.754520][ T4709] jfs_mount: diMount(ipaimap) failed w/rc = -5 [ 670.771414][ T4709] Mount JFS Failure: -5 [ 670.780057][ T4709] jfs_mount failed w/return code = -5 12:52:03 executing program 2: r0 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) pipe(&(0x7f00000001c0)={0xffffffffffffffff, 0xffffffffffffffff}) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000300)={&(0x7f0000000000)=@newlink={0x44, 0x10, 0x0, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x24, 0x12, 0x0, 0x1, @bond={{0x9}, {0x14, 0x2, 0x0, 0x1, [@IFLA_BOND_ARP_VALIDATE={0x8}, @IFLA_BOND_AD_USER_PORT_KEY={0x6}]}}}]}, 0x44}}, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000200)={&(0x7f0000000000)=ANY=[@ANYBLOB="4800000010005fff000005000000000000000000", @ANYRES32=0x0, @ANYBLOB="0000000000000000280012800a00010076786c616e"], 0x3}}, 0x0) write$binfmt_misc(r2, &(0x7f0000000000)=ANY=[], 0xfffffecc) splice(r1, 0x0, r3, 0x0, 0x4ffe2, 0x0) 12:52:03 executing program 4: r0 = syz_init_net_socket$nfc_raw(0x27, 0x5, 0x0) read(r0, &(0x7f0000000000)=""/36, 0x24) 12:52:03 executing program 1: r0 = socket$inet6(0xa, 0x3, 0x7) connect$inet6(r0, &(0x7f00000000c0)={0xa, 0x0, 0x0, @loopback}, 0x1c) recvmsg(0xffffffffffffffff, &(0x7f00000017c0)={0x0, 0x0, &(0x7f0000001740)=[{0x0}, {0x0}, {&(0x7f0000000340)=""/132, 0x84}], 0x3}, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000340)=@newlink={0x20}, 0x20}}, 0x0) sendmmsg(r0, &(0x7f0000000480), 0x2e9, 0x0) 12:52:03 executing program 3: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) 12:52:03 executing program 0: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) 12:52:03 executing program 5: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$jfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010000)="4a465331010000006076000000000000001000000c00030000020000090000000020000000092010000000000000000004000000180000000200000016000000320700000100000000010000000f000034000000cc", 0x55, 0x8000}, {&(0x7f0000010f00)="10c4645f010000000100000001000000040000000b000000002000000000000002", 0x21, 0xb1fc}], 0x0, &(0x7f000006d200)) 12:52:03 executing program 4: r0 = syz_init_net_socket$nfc_raw(0x27, 0x5, 0x0) read(r0, &(0x7f0000000000)=""/36, 0x24) 12:52:03 executing program 0: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) [ 671.410572][ T4755] loop5: detected capacity change from 0 to 177 12:52:03 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) 12:52:03 executing program 1: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) pipe(&(0x7f0000000080)={0xffffffffffffffff, 0xffffffffffffffff}) r3 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) preadv(r3, &(0x7f0000000280), 0x18, 0xd9f, 0x0) vmsplice(r2, &(0x7f00000000c0)=[{&(0x7f0000000180)="77690addcfbe1fbb66ec", 0xff3b}], 0x1, 0x1) close(r2) socket$nl_route(0x10, 0x3, 0x0) ioctl$sock_SIOCGIFINDEX(r2, 0x8933, &(0x7f0000000140)={'bridge_slave_0\x00', 0x0}) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000180)=ANY=[@ANYBLOB="2c00000013003586000e00000020000a07000000", @ANYRES32=r4, @ANYBLOB="0000ef04e60000000c001a"], 0x3}, 0x1, 0xfffffffc}, 0x0) splice(r1, 0x0, r2, 0x0, 0x100000000, 0x0) [ 671.474505][ T4764] netlink: 'syz-executor.2': attribute type 25 has an invalid length. [ 671.489278][ T4755] ERROR: (device loop5): xtSearch: XT_GETPAGE: xtree page corrupt [ 671.489278][ T4755] 12:52:03 executing program 3: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) [ 671.523433][ T4755] ERROR: (device loop5): remounting filesystem as read-only [ 671.545175][ T4755] xtLookup: xtSearch returned -5 12:52:03 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) [ 671.577165][ T4755] read_mapping_page failed! [ 671.593170][ T4755] jfs_mount: diMount(ipaimap) failed w/rc = -5 [ 671.624858][ T4755] Mount JFS Failure: -5 [ 671.629833][ T4755] jfs_mount failed w/return code = -5 12:52:04 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) 12:52:04 executing program 1: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) pipe(&(0x7f0000000080)={0xffffffffffffffff, 0xffffffffffffffff}) r3 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) preadv(r3, &(0x7f0000000280), 0x18, 0xd9f, 0x0) vmsplice(r2, &(0x7f00000000c0)=[{&(0x7f0000000180)="77690addcfbe1fbb66ec", 0xff3b}], 0x1, 0x1) close(r2) socket$nl_route(0x10, 0x3, 0x0) ioctl$sock_SIOCGIFINDEX(r2, 0x8933, &(0x7f0000000140)={'bridge_slave_0\x00', 0x0}) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000180)=ANY=[@ANYBLOB="2c00000013003586000e00000020000a07000000", @ANYRES32=r4, @ANYBLOB="0000ef04e60000000c001a"], 0x3}, 0x1, 0xfffffffc}, 0x0) splice(r1, 0x0, r2, 0x0, 0x100000000, 0x0) 12:52:04 executing program 0: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) syz_open_dev$tty1(0xc, 0x4, 0x1) r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$GIO_UNIMAP(r0, 0x4b66, 0x0) ioctl$TIOCL_UNBLANKSCREEN(r0, 0x541c, &(0x7f0000000040)) 12:52:04 executing program 5: mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) mount(0x0, &(0x7f0000000480)='./file0\x00', 0x0, 0x100000, 0x0) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000180)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) r1 = open_tree(0xffffffffffffff9c, &(0x7f0000000080)='./file0\x00', 0x1) mount$bind(&(0x7f0000000640)='./file0\x00', &(0x7f0000000680)='./file0/file0\x00', 0x0, 0x801412, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0, 0x0) move_mount(r1, &(0x7f0000000140)='.\x00', r2, &(0x7f00000001c0)='./file0\x00', 0x0) 12:52:04 executing program 3: perf_event_open(&(0x7f00000003c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffff, 0xffffffffffffffff, 0x0) syz_emit_ethernet(0x8a, &(0x7f0000000800)={@local, @link_local, @void, {@ipv6={0x86dd, @tcp={0x0, 0x6, "0a3ff2", 0x54, 0x6, 0x0, @remote, @local, {[], {{0x0, 0x0, 0x41424344, 0x41424344, 0x0, 0x0, 0x15, 0xc2, 0x0, 0x0, 0x0, {[@timestamp={0x8, 0xa}, @exp_fastopen={0xfe, 0x12, 0xf989, "5ab971d14f73e13277c8d2c03afe"}, @mss={0x2, 0x4}, @exp_fastopen={0xfe, 0x13, 0xf989, "8f5a00"/15}, @mptcp=@add_addr={0x1e, 0xa, 0x0, 0xa, 0x0, @private}]}}}}}}}}, 0x0) 12:52:04 executing program 2: r0 = bpf$MAP_CREATE(0x0, &(0x7f0000000000)={0x5, 0x1ff, 0x7, 0x9}, 0x3c) r1 = bpf$MAP_CREATE(0x0, &(0x7f00004f9fe4)={0xd, 0x4, 0x4, 0x100000001, 0x0, r0}, 0x37) bpf$PROG_LOAD(0x5, &(0x7f0000000180)={0x7, 0x5, &(0x7f0000000040)=@framed={{}, [@map={0x18, 0x0, 0x1, 0x0, r1}]}, &(0x7f0000000140)='GPL\x00', 0x4, 0xdd, &(0x7f0000000240)=""/221, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x70) 12:52:04 executing program 3: perf_event_open(&(0x7f00000003c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffff, 0xffffffffffffffff, 0x0) syz_emit_ethernet(0x8a, &(0x7f0000000800)={@local, @link_local, @void, {@ipv6={0x86dd, @tcp={0x0, 0x6, "0a3ff2", 0x54, 0x6, 0x0, @remote, @local, {[], {{0x0, 0x0, 0x41424344, 0x41424344, 0x0, 0x0, 0x15, 0xc2, 0x0, 0x0, 0x0, {[@timestamp={0x8, 0xa}, @exp_fastopen={0xfe, 0x12, 0xf989, "5ab971d14f73e13277c8d2c03afe"}, @mss={0x2, 0x4}, @exp_fastopen={0xfe, 0x13, 0xf989, "8f5a00"/15}, @mptcp=@add_addr={0x1e, 0xa, 0x0, 0xa, 0x0, @private}]}}}}}}}}, 0x0) 12:52:04 executing program 5: mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) mount(0x0, &(0x7f0000000480)='./file0\x00', 0x0, 0x100000, 0x0) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000180)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) r1 = open_tree(0xffffffffffffff9c, &(0x7f0000000080)='./file0\x00', 0x1) mount$bind(&(0x7f0000000640)='./file0\x00', &(0x7f0000000680)='./file0/file0\x00', 0x0, 0x801412, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0, 0x0) move_mount(r1, &(0x7f0000000140)='.\x00', r2, &(0x7f00000001c0)='./file0\x00', 0x0) 12:52:04 executing program 1: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) pipe(&(0x7f0000000080)={0xffffffffffffffff, 0xffffffffffffffff}) r3 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) preadv(r3, &(0x7f0000000280), 0x18, 0xd9f, 0x0) vmsplice(r2, &(0x7f00000000c0)=[{&(0x7f0000000180)="77690addcfbe1fbb66ec", 0xff3b}], 0x1, 0x1) close(r2) socket$nl_route(0x10, 0x3, 0x0) ioctl$sock_SIOCGIFINDEX(r2, 0x8933, &(0x7f0000000140)={'bridge_slave_0\x00', 0x0}) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000180)=ANY=[@ANYBLOB="2c00000013003586000e00000020000a07000000", @ANYRES32=r4, @ANYBLOB="0000ef04e60000000c001a"], 0x3}, 0x1, 0xfffffffc}, 0x0) splice(r1, 0x0, r2, 0x0, 0x100000000, 0x0) 12:52:04 executing program 4: mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) mount(0x0, &(0x7f0000000480)='./file0\x00', 0x0, 0x100000, 0x0) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000180)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) r1 = open_tree(0xffffffffffffff9c, &(0x7f0000000080)='./file0\x00', 0x1) mount$bind(&(0x7f0000000640)='./file0\x00', &(0x7f0000000680)='./file0/file0\x00', 0x0, 0x801412, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0, 0x0) move_mount(r1, &(0x7f0000000140)='.\x00', r2, &(0x7f00000001c0)='./file0\x00', 0x0) 12:52:04 executing program 0: syz_mount_image$btrfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000000, 0x8e, &(0x7f0000000200)=[{&(0x7f0000010000)="319ec57668fbea0e81fdeb94d62684c3a61183914d9dd7397d225528fdb5c15370346104831d4a1ba4a901350560c10f000001000000000001000000000000005f42485266535f4d07000000000000000040d30100000000004050010000000000000000000000000000000000000000000000080000000000300200000000000600000000000000010000000000000000100000004000000040000000100000810000000500000000000000000000000000000000000000000000006109000000000000020000000001000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000088b93dc33e7845fc895b8ef0c8e928e870346104831d4a1ba4a901350560c10f00"/320, 0x140, 0x10000}, {&(0x7f0000010200)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\a\x00\x00\x00\x00\x00\x00\x00\a\x00'/32, 0x20, 0x10220}, {&(0x7f0000010300)="00000000000000000000000001000000000000e400005001000000000000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000d0010000000088b93dc33e7845fc895b8ef0c8e928e80000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000d0010000000088b93dc33e7845fc895b8ef0c8e928e800"/256, 0x100, 0x10320}, {&(0x7f0000010400)="00000000000000000000000040d2010000000005000000000000000040500100000000050000000000000000c0d1010000000005000000000000000000d0010000000004000000000000000000d2010000000005000000000000000000d10100000000040000000000000000000008000000000000020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d201000000000600000000000000004050010000000005000000000000000080d2010000000006000000000000000080d0010000000006000000000000000000d30100000000060000000000000000c0d0010000000006000000000000000000000800000000003002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d301000000000700000000000000004050010000000005000000000000000080d3010000000007000000000000000080d0010000000006000000000000000000d30100000000060000000000000000c0d0010000000006000000000000000000000800000000003002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d001000000000400000000000000000050010000000004000000000000000080d0010000000004000000000000000000d00100000000040000000000000000c0d0010000000004000000000000000000d101000000000400000000000000000000080000000000000200000000000100"/640, 0x280, 0x10b20}, {&(0x7f0000010700)="c984a904911289c03d48933f744615298a530cf61ea160cc1a76552c23d9e1a670346104831d4a1ba4a901350560c10f00001000000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090300000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e00005000"/224, 0xe0, 0x100000}, {&(0x7f0000010800)="000000000000000000000000000000008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000088b93dc33e7845fc895b8ef0c8e928e80000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000088b93dc33e7845fc895b8ef0c8e928e80000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000000800000000000040010000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000088b93dc33e7845fc895b8ef0c8e928e870346104831d4a1ba4a901350560c10f595c85d1b9fb3d602798f7ce8eb46b5a8219a250115a82d03ac77059725a0e4170346104831d4a1ba4a901350560c10f00401000000000000000000000000001b4fcc70c6b4b471493ea2fa139b25109010000000000000002000000000000000c000000000000100000000000a90000000000000000833f0000180000000000100000000000b00100000000000000833f0000000000000040100000000000a900000000000000006b3f0000180000000040100000000000b002000000000000006b3f0000000000000080100000000000a90000000000000000533f0000180000000080100000000000b00300000000000000533f00000000000000c0100000000000a900000000000000003b3f00001800000000c0100000000000b004000000000000003b3f0000000000000000110000000000a90000000000000000233f0000180000000000110000000000b00500000000000000233f0000000000000040110000000000a900000000000000000b3f0000180000000040110000000000b007000000000000000b3f00"/768, 0x300, 0x103ea0}, {&(0x7f0000010b00)="00000000000000000000000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000f292bb0685c8b52ab75f976e154b2c65df462af707110dd78082a821b95d73ab70346104831d4a1ba4a901350560c10f00801000000000000000000000000001b4fcc70c6b4b471493ea2fa139b251090100000000000000030000000000000002000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e00005000"/320, 0x140, 0x107f60}, {&(0x7f0000010d00)="00000000000000000000000000000000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000000800000000000040000000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000088b93dc33e7845fc895b8ef0c8e928e870346104831d4a1ba4a901350560c10f5ca16cb3474d6af8a8122328b6608caa3edb2fe68841e0ee6b6c20cdc182b56a70346104831d4a1ba4a901350560c10f00c01000000000000000000000000001b4fcc70c6b4b471493ea2fa139b251090100000000000000040000000000000001000000000100000000000000cc00001000000000006b3f0000300000000000", 0x140, 0x10bf40}, {&(0x7f0000010f00)="000000000000000000000000000000000300000000000000000100000000000000001000000000000000400000000000b4fcc70c6b4b471493ea2fa139b251094885adf9c389caf08568faae5de056f2860937928d5773c136d9756eeb06d31270346104831d4a1ba4a901350560c10f00001100000000000000000000000001b4fcc70c6b4b471493ea2fa139b2510901000000000000000500000000000000", 0xa0, 0x10ffc0}, {&(0x7f0000011000)="ddb4bcb9c30d20f6b9af5e85bf42aa0a09d162d2a08c08e6144b938ada86a8a670346104831d4a1ba4a901350560c10f00401100000000000000000000000001b4fcc70c6b4b471493ea2fa139b2510901000000000000000700000000000000", 0x60, 0x114000}, {&(0x7f0000011100)="1582a3e2ef7e64982dfb6f7bab4bf837a57513626171a6908afdf6737190407d70346104831d4a1ba4a901350560c10f00801100000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109020000000000000002000000000000000a000000000000100000000000c00000400000000000833f0000180000000000110000000000a900000000000000006b3f0000180000000000110000000000b005000000000000006b3f0000000000000040110000000000a90000000000000000533f0000180000000040110000000000b00700000000000000533f0000000000000080110000000000a90000000000000000323f00002100000000c0110000000000a90000000000000000113f0000210000000000120000000000a90000000000000000f03e0000210000000000500000000000a90000000000000000cf3e0000210000000000500000000000c00000800000000000b73e0000180000000000500000000000c00000800000000000d83e0000180000000000500000000000c000008000000000000b3f0000180000000040110000000000b007000000000000000b3f0000000000000000500000000000c00000800000000000f33e000018", 0x1c0, 0x118000}, {&(0x7f0000011300)="00000000000000000000000000000000000000000000000000000000004000000000000000010000000000000400000000000000010000000000000002000000000000000200000000000000b00100000000000000010000000000000002000000000000000200000000000000b00300000000000000010000000000000002000000000000000200000000000000b00400000000000000010000000000000002000000000000000200000000000000b002000000000000000100000000000000010000000000000002000000000000000100000000000000010000000000000002000000000000000040010000000000000100000000000002000000000000005b75e1cedb575f97df65bdca9dc19cf83549e06ddcb8dfaeaaa766f8f93ecc6a70346104831d4a1ba4a901350560c10f00c01100000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090200000000000000040000000000000002000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f00003000"/416, 0x1a0, 0x11bf00}, {&(0x7f0000011500)="0300000000000000000100000000000000005000000000000000800000000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000001000000000000000400000000000b4fcc70c6b4b471493ea2fa139b25109870818ad2e8c48e3c99f5cce1707625f2a6c9ec948690dac6c70ed5d5213183770346104831d4a1ba4a901350560c10f00001200000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090200000000000000030000000000000003000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e00005000"/288, 0x120, 0x11ffa0}, {&(0x7f0000011700)="800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000088b93dc33e7845fc895b8ef0c8e928e80000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000088b93dc33e7845fc895b8ef0c8e928e8010000000000000000000008000000000000c0000000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000088b93dc33e7845fc895b8ef0c8e928e870346104831d4a1ba4a901350560c10f", 0x100, 0x123f00}, {&(0x7f0000011800)="4d525162e12235bbb6147493325369c24354d3b73170753228d9fb86de3f495d70346104831d4a1ba4a901350560c10f00005000000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090200000000000000010000000000000004000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b70100000500000000000000840000000000000000763a0000b70100000700000000000000840000000000000000bf380000b70100"/224, 0xe0, 0x500000}, {&(0x7f0000011900)="0000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000", 0x40, 0x503920}, {&(0x7f0000011a00)="00000000010000000000000000000000000000000040110000000000000000000000000000400000000000000000000000000000000000000000000001000000", 0x40, 0x5039c0}, {&(0x7f0000011b00)="00000000000000000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x503ac0}, {&(0x7f0000011c00)="0000000000000000000000000000000000000000000000000000000100000000000000000000000000000000001100000000000000000000000000004000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000003d122988a0a54e95a3d4e7c1f31c304400"/160, 0xa0, 0x503b60}, {&(0x7f0000011d00)="000057bc645f000000000000000057bc645f00"/32, 0x20, 0x503c20}, {&(0x7f0000011e00)="00000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x503c80}, {&(0x7f0000011f00)="0000000000000000000000000000000000000200000000000000000000000000000000c0110000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000200"/128, 0x80, 0x503d20}, {&(0x7f0000012000)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x503e40}, {&(0x7f0000012100)="000000000000000000020000000000000000000000000000000080110000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000200000000000000", 0x60, 0x503ee0}, {&(0x7f0000012200)="82c6b9837795c19d419c6d5c95a7ae4479152c317a6bdd14818cfa636718380970346104831d4a1ba4a901350560c10f00405000000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090300000000000000040000000000000003000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f0000300000000100000000000000cc0000d000000000000b3f00003000"/192, 0xc0, 0x504000}, {&(0x7f0000012300)="00000000000000000000000000000000030000000000000000010000000000000000d000000000000000800000000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000005000000000000000800000000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000001000000000000000400000000000b4fcc70c6b4b471493ea2fa139b2510929be8135b8e04bbdb26810690481a33d364e1fd8770f86469ccd8c7c60471f1f70346104831d4a1ba4a901350560c10f00805000000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109030000000000000002000000000000000a000000000000100000000000a900000000000000007a3f0000210000000000100000000000c00000400000000000623f0000180000000040110000000000a900000000000000004a3f0000180000000040110000000000b007000000000000004a3f0000000000000000500000000000c00000800000000000323f0000180000000040500000000000a90000000000000000113f0000210000000080500000000000a90000000000000000f03e00002100000000c0500000000000a90000000000000000cf3e0000210000000000510000000000a90000000000000000ae3e0000210000000000d00000000000c00000800000000000963e0000180000000000500000000000c00000800000000000ae3e0000180000000000d00000000000c00000800000000000963e0000180000000040110000000000b007000000000000000b3f0000000000000000500000000000c00000800000000000f33e000018", 0x260, 0x507f60}, {&(0x7f0000012600)="000000000000000000000000010000000000000100000000000000000000000000000000010000000000000100000000000000010000000000000003000000000000000200000000000000b00500000000000000010000000000000003000000000000000200000000000000b00100000000000000010000000000000003000000000000000200000000000000b00200000000000000010000000000000003000000000000000200000000000000b00400000000000000000001000000000000010000000000000400000000000000010000000000000001000000000000000200000000000000008000000000000000010000000000000200000000000000010000000000000003000000000000000200000000000000b003000000000000000b374ccb87df03bf1c4286b3ee0fdff117ebadf600545c023a82ac58602ff38b70346104831d4a1ba4a901350560c10f00c05000000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090300000000000000010000000000000008000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b70100"/608, 0x260, 0x50bee0}, {&(0x7f0000012900)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x50f840}, {&(0x7f0000012a00)="00000100000000000000000000000000000000401100000000000000000000000000004000000000000000000000000000000000000000000000010000000000", 0x40, 0x50f8e0}, {&(0x7f0000012b00)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x50f9e0}, {&(0x7f0000012d00)="000000000000000000000300000000000000000100000000000000005100000000000000000000000000004000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000003000000000000003d122988a0a54e95a3d4e7c1f31c304400"/128, 0x80, 0x50fb60}, {&(0x7f0000012e00)="000000000000000000000000000000000057bc645f000000000000000057bc645f00"/64, 0x40, 0x50fc00}, {&(0x7f0000012f00)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x50fc80}, {&(0x7f0000013000)="000000000000000000000000000000000000030000000000000000000000000000000040500000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300"/128, 0x80, 0x50fd20}, {&(0x7f0000013100)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x50fe40}, {&(0x7f0000013200)="000000000000000000030000000000000000000000000000000080500000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300000000000000", 0x60, 0x50fee0}, {&(0x7f0000013300)="a19d0d363b63494f3ff9f2000cf38ea4e10c5ac2b820f9c76f7a69af34eb129770346104831d4a1ba4a901350560c10f00005100000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090300000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/160, 0xa0, 0x510000}, {&(0x7f0000013400)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f0000000000000000", 0xc0, 0x513f40}, {&(0x7f0000013500)="d38fe939a4f7e2406beb9f7efdcc9434d17fac2d9d4543511e27e77b6ca7086270346104831d4a1ba4a901350560c10f00005001000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090400000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x100, 0x1500000}, {&(0x7f0000013600)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000088b93dc33e7845fc895b8ef0c8e928e80100000000000000000050040000000088b93dc33e7845fc895b8ef0c8e928e80000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000d0010000000088b93dc33e7845fc895b8ef0c8e928e800008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000088b93dc33e7845fc895b8ef0c8e928e80000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000088b93dc33e7845fc895b8ef0c8e928e80000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000088b93dc33e7845fc895b8ef0c8e928e870346104831d4a1ba4a901350560c10fb757b59a35350df8b785bdd9e7ff62518c20235f751446c88da4f5818932131b70346104831d4a1ba4a901350560c10f00405001000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090500000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000d00000000000e93e0000500000000001000000000000e40000500100000000793e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000b93d0000700000000000000000", 0x340, 0x1503dc0}, {&(0x7f0000013a00)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000088b93dc33e7845fc895b8ef0c8e928e80000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000088b93dc33e7845fc895b8ef0c8e928e80000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000088b93dc33e7845fc895b8ef0c8e928e80100000000000000000050040000000088b93dc33e7845fc895b8ef0c8e928e80000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000d0010000000088b93dc33e7845fc895b8ef0c8e928e800008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000088b93dc33e7845fc895b8ef0c8e928e870346104831d4a1ba4a901350560c10f", 0x240, 0x1507dc0}, {&(0x7f0000013d00)="d38fe939a4f7e2406beb9f7efdcc9434d17fac2d9d4543511e27e77b6ca7086270346104831d4a1ba4a901350560c10f00005001000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090400000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x100, 0x1d00000}, {&(0x7f0000013e00)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000088b93dc33e7845fc895b8ef0c8e928e80100000000000000000050040000000088b93dc33e7845fc895b8ef0c8e928e80000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000d0010000000088b93dc33e7845fc895b8ef0c8e928e800008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000088b93dc33e7845fc895b8ef0c8e928e80000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000088b93dc33e7845fc895b8ef0c8e928e80000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000088b93dc33e7845fc895b8ef0c8e928e870346104831d4a1ba4a901350560c10fb757b59a35350df8b785bdd9e7ff62518c20235f751446c88da4f5818932131b70346104831d4a1ba4a901350560c10f00405001000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090500000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000d00000000000e93e0000500000000001000000000000e40000500100000000793e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000b93d0000700000000000000000", 0x340, 0x1d03dc0}, {&(0x7f0000014200)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000088b93dc33e7845fc895b8ef0c8e928e80000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000088b93dc33e7845fc895b8ef0c8e928e80000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000088b93dc33e7845fc895b8ef0c8e928e80100000000000000000050040000000088b93dc33e7845fc895b8ef0c8e928e80000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000d0010000000088b93dc33e7845fc895b8ef0c8e928e800008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000088b93dc33e7845fc895b8ef0c8e928e870346104831d4a1ba4a901350560c10f", 0x240, 0x1d07dc0}, {&(0x7f0000014500)="4d2a71112788c77acd260d99ba28b4c462130dfc14d1c0fba53d27bda278fe5a70346104831d4a1ba4a901350560c10f0000d001000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090400000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/160, 0xa0, 0x2500000}, {&(0x7f0000014600)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f0000000000000000e088b850183104884a529c41eeace44c1ea4f2a06aaa01513d9e788781ba8fda70346104831d4a1ba4a901350560c10f0040d001000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109060000000000000005000000000000001b000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e00002300000001010000000000000100000000000000009c3d0000a000000001010000000000000c00010000000000008d3d00000f0000000101000000000000544bae7904000000006a3d000023000000010100000000000054482d12f600000000473d0000230000000201000000000000010000000000000000a73c0000a000000002010000000000000c0101000000000000983c00000f00000002010000000000006c0000000000000000693800002f0400000301000000000000010000000000000000c9370000a000000003010000000000000c0101000000000000ba3700000f00000003010000000000006c00000000000000007f3700003b0000000401000000000000010000000000000000df360000a000000004010000000000000c0001000000000000d03600000f00000004010000000000001822a8f12600000000a13600002f000000040100000000000018d65ba13500000000723600002f00000004010000000000006c0000000000000000533600001f0000000501000000000000010000000000000000b3350000a000000005010000000000000c0001000000000000953500001e0000000601000000000000010000000000000000f5340000a000000006010000000000000c0001000000000000e23400001300000006010000000000006c0000000000000000693400007900"/992, 0x3e0, 0x2503f40}, {&(0x7f0000014a00)="000000000000000000000000000006000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e0400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3138383637383139352f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa10000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e03010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e04010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000068317624dd035fd3dc591cb407f388f68e81c3b6bf5f2f6538e3266b2e1c1f5670346104831d4a1ba4a901350560c10f0080d001000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090600000000000000050000000000000023000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e0000230000000001000000000000600200000000000000193e0000230000000001000000000000600300000000000000f63d0000230000000001000000000000600400000000000000d33d0000230000000001000000000000600500000000000000b03d0000230000000001000000000000600600000000000000893d0000270000000101000000000000010000000000000000e93c0000a000000001010000000000000c0001000000000000da3c00000f0000000101000000000000544bae790400000000b73c000023000000010100000000000054482d12f600000000943c0000230000000101000000000000600200000000000000713c00002300000001010000000000006003000000000000004e3c0000230000000201000000000000010000000000000000ae3b0000a000000002010000000000000c01010000000000009f3b00000f00000002010000000000006c0000000000000000703700002f0400000301000000000000010000000000000000d0360000a000000003010000000000000c0101000000000000c13600000f00000003010000000000006c0000000000000000863600003b0000000401000000000000010000000000000000e6350000a000000004010000000000000c0001000000000000d73500000f00000004010000000000001822a8f12600000000a83500002f000000040100000000000018d65ba13500000000793500002f00000004010000000000006c00000000000000005a3500001f0000000501000000000000010000000000000000ba340000a000000005010000000000000c00010000000000009c3400001e00000005010000000000006c000000000000000067340000350000000601000000000000010000000000000000c7330000a000000006010000000000000c0001000000000000b43300001300000006010000000000006c00000000000000003b3300007900"/3872, 0xf20, 0x25074c0}, {&(0x7f0000015a00)="06000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e0600000000000000003000000000000000000000010000d000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed810000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531060000000000000006000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3138383637383139352f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000260000000000000026000000000000000000000000000000010000000000000000000000ffa10000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530060000000000000006000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e03010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c653003010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06010000000000000100000000000000000600000000000000000009000166696c652e636f6c6405010000000000000100000000000000000600000000000000000005000166696c653305010000000000000100000000000000000600000000000000000005000166696c653204010000000000000100000000000000000600000000000000000005000166696c653101010000000000000100000000000000000600000000000000000005000266696c653004010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e030000000000000006000000000000003a0000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e57bc645f00000000000000002e6f148354e768f34a8a6bb7668fb42c49380b04423b8f43fa7979af7779b9cd70346104831d4a1ba4a901350560c10f00c0d001000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109060000000000000007000000000000000100000000f6ffffffffffffff800000d000000000003b3f0000600000000000", 0xce0, 0x250b3a0}, {&(0x7f0000016700)="ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca754e04de0cc7018e40298fa2c5a922428d06f4698e651a4e5d4e5a94fa4022c7f70346104831d4a1ba4a901350560c10f0000d101000000000100000000000001b4fcc70c6b4b471493ea2fa139b2510904000000000000000700000000000000", 0xc0, 0x250ffa0}, {&(0x7f0000016800)="9c6715571564cf7f37a76e4c8ce53b4826d27f0ee7348ccf644abe1706d04e5270346104831d4a1ba4a901350560c10f0040d101000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090400000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/160, 0xa0, 0x2514000}, {&(0x7f0000016900)="0000000000000000000000000000000000000000000000000000000002002e2e04000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f0000000000000000000000000000000000000000313da22c2b58c2df5a1e8586ea60719a7d735cf02c0110f31c4725d2a7fec90970346104831d4a1ba4a901350560c10f0080d101000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090400000000000000090000000000000001000000003d122988a0a54e95fba3d4e7c1f31c3044933f0000080000000000", 0x140, 0x2517f40}, {&(0x7f0000016b00)="0000000000000000000000000000000000000000000000000500000000000000a093de018762c5a067e9e54863363edf2a70ad5cc9e05c776b3ca75e8c3a117970346104831d4a1ba4a901350560c10f00c0d101000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109050000000000000002000000000000000b000000000000d00000000000c00000800000000000833f0000180000000000500100000000c000008000000000006b3f0000180000000040500100000000a900000000000000004a3f0000210000000000d00100000000a90000000000000000293f0000210000000000d00100000000c00000000200000000113f0000180000000000d10100000000a90000000000000000f03e0000210000000040d10100000000a90000000000000000cf3e0000210000000080d10100000000a90000000000000000ae3e00002100000000c0d10100000000a900000000000000008d3e0000210000000000d20100000000a900000000000000006c3e0000210000000040d20100000000a900000000000000004b3e0000210000000080d10100000000a900000000000000004b3e0000210000000080d10100000000a90000000000000000333e0000210000000000500000000000c00000800000000000f33e000018", 0x1e0, 0x251bfe0}, {&(0x7f0000016d00)="010000000000000004000000000000000200000000000000010000000000000004000000000000000200000000000000010000000000000005000000000000000200000000000000b00100000000000000010000000000000005000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00200000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000004000000000000000200000000000000b0070000000000000000c001000000000000010000000000002400000000000000010000000000000004000000000000000200000000000000b00500000000000000010000000000000005000000000000000200000000000000b003000000000000000040000000000000000100000000000022000000000000000000000000000000000100000000000001000000000000000ea4da430dd626b63bbeeaca2901cce579401add23ed86b454960eef1bf6f4f470346104831d4a1ba4a901350560c10f0000d201000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090500000000000000040000000000000005000000000100000000000000cc0000d000000000006b3f0000300000000100000000000000cc00005001000000003b3f0000300000000100000000000000cc0000d001000000000b3f0000300000000100000000000000cc0000500200000000db3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc00005004000000007b3e00003000"/672, 0x2a0, 0x251fe80}, {&(0x7f0000017000)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000005001000000000000800000000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000005001000000000000800000000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d000000000000000800000000000b4fcc70c6b4b471493ea2fa139b2510931e35eb55a819be07aa687a645a01a404d57a2633e7dd8c3116de19399fa380b70346104831d4a1ba4a901350560c10f0040d201000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109050000000000000001000000000000000a000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b7010000f7ffffffffffffff8400000000000000006f340000b701000000", 0x2c0, 0x2523ea0}, {&(0x7f0000017300)="0000000000000000000000000000000000000000040000000000000000010000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x2527560}, {&(0x7f0000017400)="0000000000000000000000040000000000000000000000000000000080d1010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x2527720}, {&(0x7f0000017500)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x2527840}, {&(0x7f0000017600)="0000040000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/96, 0x60, 0x25278e0}, {&(0x7f0000017700)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x25279e0}, {&(0x7f0000017900)="00000000000000000000040000000000000000010000000000000000d001000000000000000000000000004000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000004000000000000003d122988a0a54e95a3d4e7c1f31c304400"/128, 0x80, 0x2527b60}, {&(0x7f0000017a00)="000000000000000000000000000000000057bc645f000000000000000057bc645f00"/64, 0x40, 0x2527c00}, {&(0x7f0000017b00)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x2527c80}, {&(0x7f0000017c00)="000000000000000000000000000000000000050000000000000000000000000000000000d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x2527d20}, {&(0x7f0000017d00)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x2527e40}, {&(0x7f0000017e00)="0000000000000000000500000000000000000000000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500000000000000", 0x60, 0x2527ee0}, {&(0x7f0000017f00)="7558e9b94c813d24ad1a10bb5cdd287417a90f425dfa1e96b245553ce6b9865a70346104831d4a1ba4a901350560c10f0080d201000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109060000000000000002000000000000000c000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e0000180000000080d00100000000a90000000000000000dc3e00002100000000c0d00100000000a90000000000000000bb3e0000210000000040d10100000000a900000000000000009a3e0000210000000080d10100000000a90000000000000000793e0000210000000080d20100000000a90000000000000000583e00002100000000c0d20100000000a90000000000000000373e0000210000000000d30100000000a90000000000000000163e00002100"/416, 0x1a0, 0x2528000}, {&(0x7f0000018100)="000000000000000000000000000000000000000000000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000200000000000000b0050000000000000000c001000000000000010000000000002400000000000000010000000000000005000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000006000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000041f869ac1d5c37d82c675bae0835500ff41b978e72d755c9169fb41bc43a6cdc70346104831d4a1ba4a901350560c10f00c0d201000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109060000000000000001000000000000000a000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b7010000f7ffffffffffffff8400000000000000006f340000b701000000", 0x300, 0x252be60}, {&(0x7f0000018400)="0000000000000000000000000000000000000000040000000000000000010000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x252f560}, {&(0x7f0000018500)="0000000000000000000000040000000000000000000000000000000080d1010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x252f720}, {&(0x7f0000018600)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x252f840}, {&(0x7f0000018700)="00000600000000000000000000000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x252f8e0}, {&(0x7f0000018800)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x252f9e0}, {&(0x7f0000018a00)="00000000000000000000060000000000000000010000000000000080d001000000000000000000000000004000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000006000000000000003d122988a0a54e95a3d4e7c1f31c30440000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000058bc645f000000006bda800e57bc645f00"/224, 0xe0, 0x252fb60}, {&(0x7f0000018b00)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x252fc80}, {&(0x7f0000018c00)="000000000000000000000000000000000000060000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x252fd20}, {&(0x7f0000018d00)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x252fe40}, {&(0x7f0000018e00)="000000000000000000060000000000000000000000000000000080d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600000000000000", 0x60, 0x252fee0}, {&(0x7f0000018f00)="46d32c70a5308c67aa189c2170dcfded3c61de55e9e0e14c995d5c4862e3341070346104831d4a1ba4a901350560c10f0000d301000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090600000000000000040000000000000006000000000000000000000000f90100000000000000733f0000280000000100000000000000cc0000d00000000000433f0000300000000100000000000000cc0000500100000000133f0000300000000100000000000000cc0000d00100000000e33e0000300000000100000000000000cc0000500200000000b33e0000300000000100000000000000cc0000500400000000833e0000300000000000000000", 0x100, 0x2530000}, {&(0x7f0000019000)="0000000000000000030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000005001000000000000800000000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000005001000000000000800000000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d000000000000000800000000000b4fcc70c6b4b471493ea2fa139b2510900000000000000000000000000000000000000000000000000000000000000000000000000000000274c0292e424fbbdb176c01c2688c40db059e66fab2a9f8a95fb0da76afb24af70346104831d4a1ba4a901350560c10f0040d301000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109070000000000000001000000000000000a000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b7010000f7ffffffffffffff8400000000000000006f340000b701000000", 0x280, 0x2533ee0}, {&(0x7f0000019300)="0000000000000000000000000000000000000000040000000000000000010000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x2537560}, {&(0x7f0000019400)="0000000000000000000000040000000000000000000000000000000080d1010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x2537720}, {&(0x7f0000019500)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x2537840}, {&(0x7f0000019600)="00000600000000000000000000000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x25378e0}, {&(0x7f0000019700)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x25379e0}, {&(0x7f0000019900)="00000000000000000000060000000000000000010000000000000080d001000000000000000000000000004000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000006000000000000003d122988a0a54e95a3d4e7c1f31c30440000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000058bc645f000000006bda800e57bc645f00"/224, 0xe0, 0x2537b60}, {&(0x7f0000019a00)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x2537c80}, {&(0x7f0000019b00)="000000000000000000000000000000000000060000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x2537d20}, {&(0x7f0000019c00)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x2537e40}, {&(0x7f0000019d00)="000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x2537ee0}, {&(0x7f0000019e00)="07d55e071adb8e582a1080fbdfcb35ccb97d0abeda440a4e3398586d845b573170346104831d4a1ba4a901350560c10f0080d301000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109070000000000000002000000000000000c000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e0000180000000080d00100000000a90000000000000000dc3e00002100000000c0d00100000000a90000000000000000bb3e0000210000000040d10100000000a900000000000000009a3e0000210000000080d10100000000a90000000000000000793e0000210000000000d30100000000a90000000000000000583e0000210000000040d30100000000a90000000000000000373e0000210000000080d30100000000a90000000000000000163e00002100"/416, 0x1a0, 0x2538000}, {&(0x7f000001a000)="000000000000000000000000000000000000000000000000000000010000000000000007000000000000000200000000000000b00200000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000200000000000000b0050000000000000000c001000000000000010000000000002400000000000000010000000000000005000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000006000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000", 0x1a0, 0x253be60}, {&(0x7f000001a200)="ca698d19af507dd81a383a4a06bba8786c9fa10dfc8c409204b1d496a1fa57d170346104831d4a1ba4a901350560c10f000000040000000001000000000000005f42485266535f4d07000000000000000040d30100000000004050010000000000000000000000000000000000000000000000080000000000300200000000000600000000000000010000000000000000100000004000000040000000100000810000000500000000000000000000000000000000000000000000006109000000000000020000000001000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000088b93dc33e7845fc895b8ef0c8e928e870346104831d4a1ba4a901350560c10f00"/320, 0x140, 0x4000000}, {&(0x7f000001a400)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\a\x00\x00\x00\x00\x00\x00\x00\a\x00'/32, 0x20, 0x4000220}, {&(0x7f000001a500)="00000000000000000000000001000000000000e400005001000000000000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000d0010000000088b93dc33e7845fc895b8ef0c8e928e80000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000088b93dc33e7845fc895b8ef0c8e928e801000000000000000000d0010000000088b93dc33e7845fc895b8ef0c8e928e800"/256, 0x100, 0x4000320}, {&(0x7f000001a600)="00000000000000000000000040d2010000000005000000000000000040500100000000050000000000000000c0d1010000000005000000000000000000d0010000000004000000000000000000d2010000000005000000000000000000d10100000000040000000000000000000008000000000000020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d201000000000600000000000000004050010000000005000000000000000080d2010000000006000000000000000080d0010000000006000000000000000000d30100000000060000000000000000c0d0010000000006000000000000000000000800000000003002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d301000000000700000000000000004050010000000005000000000000000080d3010000000007000000000000000080d0010000000006000000000000000000d30100000000060000000000000000c0d0010000000006000000000000000000000800000000003002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d001000000000400000000000000000050010000000004000000000000000080d0010000000004000000000000000000d00100000000040000000000000000c0d0010000000004000000000000000000d101000000000400000000000000000000080000000000000200000000000100"/640, 0x280, 0x4000b20}, {&(0x7f000001a900)="4d2a71112788c77acd260d99ba28b4c462130dfc14d1c0fba53d27bda278fe5a70346104831d4a1ba4a901350560c10f0000d001000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090400000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/160, 0xa0, 0x4500000}, {&(0x7f000001aa00)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f0000000000000000e088b850183104884a529c41eeace44c1ea4f2a06aaa01513d9e788781ba8fda70346104831d4a1ba4a901350560c10f0040d001000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109060000000000000005000000000000001b000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e00002300000001010000000000000100000000000000009c3d0000a000000001010000000000000c00010000000000008d3d00000f0000000101000000000000544bae7904000000006a3d000023000000010100000000000054482d12f600000000473d0000230000000201000000000000010000000000000000a73c0000a000000002010000000000000c0101000000000000983c00000f00000002010000000000006c0000000000000000693800002f0400000301000000000000010000000000000000c9370000a000000003010000000000000c0101000000000000ba3700000f00000003010000000000006c00000000000000007f3700003b0000000401000000000000010000000000000000df360000a000000004010000000000000c0001000000000000d03600000f00000004010000000000001822a8f12600000000a13600002f000000040100000000000018d65ba13500000000723600002f00000004010000000000006c0000000000000000533600001f0000000501000000000000010000000000000000b3350000a000000005010000000000000c0001000000000000953500001e0000000601000000000000010000000000000000f5340000a000000006010000000000000c0001000000000000e23400001300000006010000000000006c0000000000000000693400007900"/992, 0x3e0, 0x4503f40}, {&(0x7f000001ae00)="000000000000000000000000000006000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e0400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3138383637383139352f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa10000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e03010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e04010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000068317624dd035fd3dc591cb407f388f68e81c3b6bf5f2f6538e3266b2e1c1f5670346104831d4a1ba4a901350560c10f0080d001000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090600000000000000050000000000000023000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e0000230000000001000000000000600200000000000000193e0000230000000001000000000000600300000000000000f63d0000230000000001000000000000600400000000000000d33d0000230000000001000000000000600500000000000000b03d0000230000000001000000000000600600000000000000893d0000270000000101000000000000010000000000000000e93c0000a000000001010000000000000c0001000000000000da3c00000f0000000101000000000000544bae790400000000b73c000023000000010100000000000054482d12f600000000943c0000230000000101000000000000600200000000000000713c00002300000001010000000000006003000000000000004e3c0000230000000201000000000000010000000000000000ae3b0000a000000002010000000000000c01010000000000009f3b00000f00000002010000000000006c0000000000000000703700002f0400000301000000000000010000000000000000d0360000a000000003010000000000000c0101000000000000c13600000f00000003010000000000006c0000000000000000863600003b0000000401000000000000010000000000000000e6350000a000000004010000000000000c0001000000000000d73500000f00000004010000000000001822a8f12600000000a83500002f000000040100000000000018d65ba13500000000793500002f00000004010000000000006c00000000000000005a3500001f0000000501000000000000010000000000000000ba340000a000000005010000000000000c00010000000000009c3400001e00000005010000000000006c000000000000000067340000350000000601000000000000010000000000000000c7330000a000000006010000000000000c0001000000000000b43300001300000006010000000000006c00000000000000003b3300007900"/3872, 0xf20, 0x45074c0}, {&(0x7f000001be00)="06000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e0600000000000000003000000000000000000000010000d000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed810000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531060000000000000006000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3138383637383139352f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000260000000000000026000000000000000000000000000000010000000000000000000000ffa10000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530060000000000000006000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e03010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c653003010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e58bc645f00000000be4e1c0e06010000000000000100000000000000000600000000000000000009000166696c652e636f6c6405010000000000000100000000000000000600000000000000000005000166696c653305010000000000000100000000000000000600000000000000000005000166696c653204010000000000000100000000000000000600000000000000000005000166696c653101010000000000000100000000000000000600000000000000000005000266696c653004010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e030000000000000006000000000000003a0000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000058bc645f00000000be4e1c0e58bc645f00000000be4e1c0e57bc645f00000000000000002e6f148354e768f34a8a6bb7668fb42c49380b04423b8f43fa7979af7779b9cd70346104831d4a1ba4a901350560c10f00c0d001000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109060000000000000007000000000000000100000000f6ffffffffffffff800000d000000000003b3f0000600000000000", 0xce0, 0x450b3a0}, {&(0x7f000001cb00)="ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca754e04de0cc7018e40298fa2c5a922428d06f4698e651a4e5d4e5a94fa4022c7f70346104831d4a1ba4a901350560c10f0000d101000000000100000000000001b4fcc70c6b4b471493ea2fa139b2510904000000000000000700000000000000", 0xc0, 0x450ffa0}, {&(0x7f000001cc00)="9c6715571564cf7f37a76e4c8ce53b4826d27f0ee7348ccf644abe1706d04e5270346104831d4a1ba4a901350560c10f0040d101000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090400000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/160, 0xa0, 0x4514000}, {&(0x7f000001cd00)="0000000000000000000000000000000000000000000000000000000002002e2e04000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f0000000000000000000000000000000000000000313da22c2b58c2df5a1e8586ea60719a7d735cf02c0110f31c4725d2a7fec90970346104831d4a1ba4a901350560c10f0080d101000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090400000000000000090000000000000001000000003d122988a0a54e95fba3d4e7c1f31c3044933f0000080000000000", 0x140, 0x4517f40}, {&(0x7f000001cf00)="0000000000000000000000000000000000000000000000000500000000000000a093de018762c5a067e9e54863363edf2a70ad5cc9e05c776b3ca75e8c3a117970346104831d4a1ba4a901350560c10f00c0d101000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109050000000000000002000000000000000b000000000000d00000000000c00000800000000000833f0000180000000000500100000000c000008000000000006b3f0000180000000040500100000000a900000000000000004a3f0000210000000000d00100000000a90000000000000000293f0000210000000000d00100000000c00000000200000000113f0000180000000000d10100000000a90000000000000000f03e0000210000000040d10100000000a90000000000000000cf3e0000210000000080d10100000000a90000000000000000ae3e00002100000000c0d10100000000a900000000000000008d3e0000210000000000d20100000000a900000000000000006c3e0000210000000040d20100000000a900000000000000004b3e0000210000000080d10100000000a900000000000000004b3e0000210000000080d10100000000a90000000000000000333e0000210000000000500000000000c00000800000000000f33e000018", 0x1e0, 0x451bfe0}, {&(0x7f000001d100)="010000000000000004000000000000000200000000000000010000000000000004000000000000000200000000000000010000000000000005000000000000000200000000000000b00100000000000000010000000000000005000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00200000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000004000000000000000200000000000000b0070000000000000000c001000000000000010000000000002400000000000000010000000000000004000000000000000200000000000000b00500000000000000010000000000000005000000000000000200000000000000b003000000000000000040000000000000000100000000000022000000000000000000000000000000000100000000000001000000000000000ea4da430dd626b63bbeeaca2901cce579401add23ed86b454960eef1bf6f4f470346104831d4a1ba4a901350560c10f0000d201000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090500000000000000040000000000000005000000000100000000000000cc0000d000000000006b3f0000300000000100000000000000cc00005001000000003b3f0000300000000100000000000000cc0000d001000000000b3f0000300000000100000000000000cc0000500200000000db3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc00005004000000007b3e00003000"/672, 0x2a0, 0x451fe80}, {&(0x7f000001d400)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000005001000000000000800000000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000005001000000000000800000000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d000000000000000800000000000b4fcc70c6b4b471493ea2fa139b2510931e35eb55a819be07aa687a645a01a404d57a2633e7dd8c3116de19399fa380b70346104831d4a1ba4a901350560c10f0040d201000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109050000000000000001000000000000000a000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b7010000f7ffffffffffffff8400000000000000006f340000b701000000", 0x2c0, 0x4523ea0}, {&(0x7f000001d700)="0000000000000000000000000000000000000000040000000000000000010000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x4527560}, {&(0x7f000001d800)="0000000000000000000000040000000000000000000000000000000080d1010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x4527720}, {&(0x7f000001d900)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x4527840}, {&(0x7f000001da00)="0000040000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/96, 0x60, 0x45278e0}, {&(0x7f000001db00)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x45279e0}, {&(0x7f000001dd00)="00000000000000000000040000000000000000010000000000000000d001000000000000000000000000004000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000004000000000000003d122988a0a54e95a3d4e7c1f31c304400"/128, 0x80, 0x4527b60}, {&(0x7f000001de00)="000000000000000000000000000000000057bc645f000000000000000057bc645f00"/64, 0x40, 0x4527c00}, {&(0x7f000001df00)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x4527c80}, {&(0x7f000001e000)="000000000000000000000000000000000000050000000000000000000000000000000000d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x4527d20}, {&(0x7f000001e100)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x4527e40}, {&(0x7f000001e200)="0000000000000000000500000000000000000000000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500000000000000", 0x60, 0x4527ee0}, {&(0x7f000001e300)="7558e9b94c813d24ad1a10bb5cdd287417a90f425dfa1e96b245553ce6b9865a70346104831d4a1ba4a901350560c10f0080d201000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109060000000000000002000000000000000c000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e0000180000000080d00100000000a90000000000000000dc3e00002100000000c0d00100000000a90000000000000000bb3e0000210000000040d10100000000a900000000000000009a3e0000210000000080d10100000000a90000000000000000793e0000210000000080d20100000000a90000000000000000583e00002100000000c0d20100000000a90000000000000000373e0000210000000000d30100000000a90000000000000000163e00002100"/416, 0x1a0, 0x4528000}, {&(0x7f000001e500)="000000000000000000000000000000000000000000000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000200000000000000b0050000000000000000c001000000000000010000000000002400000000000000010000000000000005000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000006000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000041f869ac1d5c37d82c675bae0835500ff41b978e72d755c9169fb41bc43a6cdc70346104831d4a1ba4a901350560c10f00c0d201000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109060000000000000001000000000000000a000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b7010000f7ffffffffffffff8400000000000000006f340000b701000000", 0x300, 0x452be60}, {&(0x7f000001e800)="0000000000000000000000000000000000000000040000000000000000010000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x452f560}, {&(0x7f000001e900)="0000000000000000000000040000000000000000000000000000000080d1010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x452f720}, {&(0x7f000001ea00)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x452f840}, {&(0x7f000001eb00)="00000600000000000000000000000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x452f8e0}, {&(0x7f000001ec00)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x452f9e0}, {&(0x7f000001ee00)="00000000000000000000060000000000000000010000000000000080d001000000000000000000000000004000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000006000000000000003d122988a0a54e95a3d4e7c1f31c30440000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000058bc645f000000006bda800e57bc645f00"/224, 0xe0, 0x452fb60}, {&(0x7f000001ef00)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x452fc80}, {&(0x7f000001f000)="000000000000000000000000000000000000060000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x452fd20}, {&(0x7f000001f100)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x452fe40}, {&(0x7f000001f200)="000000000000000000060000000000000000000000000000000080d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600000000000000", 0x60, 0x452fee0}, {&(0x7f000001f300)="46d32c70a5308c67aa189c2170dcfded3c61de55e9e0e14c995d5c4862e3341070346104831d4a1ba4a901350560c10f0000d301000000000100000000000001b4fcc70c6b4b471493ea2fa139b251090600000000000000040000000000000006000000000000000000000000f90100000000000000733f0000280000000100000000000000cc0000d00000000000433f0000300000000100000000000000cc0000500100000000133f0000300000000100000000000000cc0000d00100000000e33e0000300000000100000000000000cc0000500200000000b33e0000300000000100000000000000cc0000500400000000833e0000300000000000000000", 0x100, 0x4530000}, {&(0x7f000001f400)="0000000000000000030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d001000000000000000200000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000005001000000000000800000000000b4fcc70c6b4b471493ea2fa139b251090300000000000000000100000000000000005001000000000000800000000000b4fcc70c6b4b471493ea2fa139b25109030000000000000000010000000000000000d000000000000000800000000000b4fcc70c6b4b471493ea2fa139b2510900000000000000000000000000000000000000000000000000000000000000000000000000000000274c0292e424fbbdb176c01c2688c40db059e66fab2a9f8a95fb0da76afb24af70346104831d4a1ba4a901350560c10f0040d301000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109070000000000000001000000000000000a000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b7010000f7ffffffffffffff8400000000000000006f340000b701000000", 0x280, 0x4533ee0}, {&(0x7f000001f700)="0000000000000000000000000000000000000000040000000000000000010000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x4537560}, {&(0x7f000001f800)="0000000000000000000000040000000000000000000000000000000080d1010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x4537720}, {&(0x7f000001f900)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x4537840}, {&(0x7f000001fa00)="00000600000000000000000000000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x45378e0}, {&(0x7f000001fb00)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000057bc645f000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x45379e0}, {&(0x7f000001fd00)="00000000000000000000060000000000000000010000000000000080d001000000000000000000000000004000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000006000000000000003d122988a0a54e95a3d4e7c1f31c30440000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000058bc645f000000006bda800e57bc645f00"/224, 0xe0, 0x4537b60}, {&(0x7f000001fe00)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x4537c80}, {&(0x7f000001ff00)="000000000000000000000000000000000000060000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x4537d20}, {&(0x7f0000020000)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x4537e40}, {&(0x7f0000020100)="000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x4537ee0}, {&(0x7f0000020200)="07d55e071adb8e582a1080fbdfcb35ccb97d0abeda440a4e3398586d845b573170346104831d4a1ba4a901350560c10f0080d301000000000100000000000001b4fcc70c6b4b471493ea2fa139b25109070000000000000002000000000000000c000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e0000180000000080d00100000000a90000000000000000dc3e00002100000000c0d00100000000a90000000000000000bb3e0000210000000040d10100000000a900000000000000009a3e0000210000000080d10100000000a90000000000000000793e0000210000000000d30100000000a90000000000000000583e0000210000000040d30100000000a90000000000000000373e0000210000000080d30100000000a90000000000000000163e00002100"/416, 0x1a0, 0x4538000}, {&(0x7f0000020400)="000000000000000000000000000000000000000000000000000000010000000000000007000000000000000200000000000000b00200000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000200000000000000b0050000000000000000c001000000000000010000000000002400000000000000010000000000000005000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000006000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000", 0x1a0, 0x453be60}], 0x0, &(0x7f0000020600)) 12:52:04 executing program 2: r0 = bpf$MAP_CREATE(0x0, &(0x7f0000000000)={0x5, 0x1ff, 0x7, 0x9}, 0x3c) r1 = bpf$MAP_CREATE(0x0, &(0x7f00004f9fe4)={0xd, 0x4, 0x4, 0x100000001, 0x0, r0}, 0x37) bpf$PROG_LOAD(0x5, &(0x7f0000000180)={0x7, 0x5, &(0x7f0000000040)=@framed={{}, [@map={0x18, 0x0, 0x1, 0x0, r1}]}, &(0x7f0000000140)='GPL\x00', 0x4, 0xdd, &(0x7f0000000240)=""/221, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x70) 12:52:04 executing program 5: mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) mount(0x0, &(0x7f0000000480)='./file0\x00', 0x0, 0x100000, 0x0) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000180)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) r1 = open_tree(0xffffffffffffff9c, &(0x7f0000000080)='./file0\x00', 0x1) mount$bind(&(0x7f0000000640)='./file0\x00', &(0x7f0000000680)='./file0/file0\x00', 0x0, 0x801412, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0, 0x0) move_mount(r1, &(0x7f0000000140)='.\x00', r2, &(0x7f00000001c0)='./file0\x00', 0x0) 12:52:04 executing program 4: mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) mount(0x0, &(0x7f0000000480)='./file0\x00', 0x0, 0x100000, 0x0) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000180)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) r1 = open_tree(0xffffffffffffff9c, &(0x7f0000000080)='./file0\x00', 0x1) mount$bind(&(0x7f0000000640)='./file0\x00', &(0x7f0000000680)='./file0/file0\x00', 0x0, 0x801412, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0, 0x0) move_mount(r1, &(0x7f0000000140)='.\x00', r2, &(0x7f00000001c0)='./file0\x00', 0x0) 12:52:04 executing program 3: perf_event_open(&(0x7f00000003c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffff, 0xffffffffffffffff, 0x0) syz_emit_ethernet(0x8a, &(0x7f0000000800)={@local, @link_local, @void, {@ipv6={0x86dd, @tcp={0x0, 0x6, "0a3ff2", 0x54, 0x6, 0x0, @remote, @local, {[], {{0x0, 0x0, 0x41424344, 0x41424344, 0x0, 0x0, 0x15, 0xc2, 0x0, 0x0, 0x0, {[@timestamp={0x8, 0xa}, @exp_fastopen={0xfe, 0x12, 0xf989, "5ab971d14f73e13277c8d2c03afe"}, @mss={0x2, 0x4}, @exp_fastopen={0xfe, 0x13, 0xf989, "8f5a00"/15}, @mptcp=@add_addr={0x1e, 0xa, 0x0, 0xa, 0x0, @private}]}}}}}}}}, 0x0) [ 672.493554][ T4823] loop0: detected capacity change from 0 to 264192 12:52:04 executing program 2: r0 = bpf$MAP_CREATE(0x0, &(0x7f0000000000)={0x5, 0x1ff, 0x7, 0x9}, 0x3c) r1 = bpf$MAP_CREATE(0x0, &(0x7f00004f9fe4)={0xd, 0x4, 0x4, 0x100000001, 0x0, r0}, 0x37) bpf$PROG_LOAD(0x5, &(0x7f0000000180)={0x7, 0x5, &(0x7f0000000040)=@framed={{}, [@map={0x18, 0x0, 0x1, 0x0, r1}]}, &(0x7f0000000140)='GPL\x00', 0x4, 0xdd, &(0x7f0000000240)=""/221, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x70) 12:52:04 executing program 1: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) pipe(&(0x7f0000000080)={0xffffffffffffffff, 0xffffffffffffffff}) r3 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) preadv(r3, &(0x7f0000000280), 0x18, 0xd9f, 0x0) vmsplice(r2, &(0x7f00000000c0)=[{&(0x7f0000000180)="77690addcfbe1fbb66ec", 0xff3b}], 0x1, 0x1) close(r2) socket$nl_route(0x10, 0x3, 0x0) ioctl$sock_SIOCGIFINDEX(r2, 0x8933, &(0x7f0000000140)={'bridge_slave_0\x00', 0x0}) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000180)=ANY=[@ANYBLOB="2c00000013003586000e00000020000a07000000", @ANYRES32=r4, @ANYBLOB="0000ef04e60000000c001a"], 0x3}, 0x1, 0xfffffffc}, 0x0) splice(r1, 0x0, r2, 0x0, 0x100000000, 0x0) 12:52:05 executing program 3: perf_event_open(&(0x7f00000003c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffff, 0xffffffffffffffff, 0x0) syz_emit_ethernet(0x8a, &(0x7f0000000800)={@local, @link_local, @void, {@ipv6={0x86dd, @tcp={0x0, 0x6, "0a3ff2", 0x54, 0x6, 0x0, @remote, @local, {[], {{0x0, 0x0, 0x41424344, 0x41424344, 0x0, 0x0, 0x15, 0xc2, 0x0, 0x0, 0x0, {[@timestamp={0x8, 0xa}, @exp_fastopen={0xfe, 0x12, 0xf989, "5ab971d14f73e13277c8d2c03afe"}, @mss={0x2, 0x4}, @exp_fastopen={0xfe, 0x13, 0xf989, "8f5a00"/15}, @mptcp=@add_addr={0x1e, 0xa, 0x0, 0xa, 0x0, @private}]}}}}}}}}, 0x0) [ 672.560289][ T4823] BTRFS: device fsid 70346104-831d-4a1b-a4a9-01350560c10f devid 1 transid 7 /dev/loop0 scanned by syz-executor.0 (4823) 12:52:05 executing program 5: mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) mount(0x0, &(0x7f0000000480)='./file0\x00', 0x0, 0x100000, 0x0) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000180)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) r1 = open_tree(0xffffffffffffff9c, &(0x7f0000000080)='./file0\x00', 0x1) mount$bind(&(0x7f0000000640)='./file0\x00', &(0x7f0000000680)='./file0/file0\x00', 0x0, 0x801412, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0, 0x0) move_mount(r1, &(0x7f0000000140)='.\x00', r2, &(0x7f00000001c0)='./file0\x00', 0x0) 12:52:05 executing program 4: mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) mount(0x0, &(0x7f0000000480)='./file0\x00', 0x0, 0x100000, 0x0) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000180)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) r1 = open_tree(0xffffffffffffff9c, &(0x7f0000000080)='./file0\x00', 0x1) mount$bind(&(0x7f0000000640)='./file0\x00', &(0x7f0000000680)='./file0/file0\x00', 0x0, 0x801412, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0, 0x0) move_mount(r1, &(0x7f0000000140)='.\x00', r2, &(0x7f00000001c0)='./file0\x00', 0x0) [ 672.624373][ T4823] BTRFS info (device loop0): disk space caching is enabled [ 672.657528][ T4823] BTRFS info (device loop0): has skinny extents 12:52:05 executing program 2: r0 = bpf$MAP_CREATE(0x0, &(0x7f0000000000)={0x5, 0x1ff, 0x7, 0x9}, 0x3c) r1 = bpf$MAP_CREATE(0x0, &(0x7f00004f9fe4)={0xd, 0x4, 0x4, 0x100000001, 0x0, r0}, 0x37) bpf$PROG_LOAD(0x5, &(0x7f0000000180)={0x7, 0x5, &(0x7f0000000040)=@framed={{}, [@map={0x18, 0x0, 0x1, 0x0, r1}]}, &(0x7f0000000140)='GPL\x00', 0x4, 0xdd, &(0x7f0000000240)=""/221, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x70) 12:52:05 executing program 1: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='cgroup.controllers\x00', 0x275a, 0x0) r1 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r1, &(0x7f00000003c0)={0xa, 0x4e22}, 0x1c) listen(r1, 0x0) r2 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r2, 0x0, 0x0, 0x20000004, &(0x7f0000000040)={0xa, 0x4e22}, 0x6d) setsockopt$inet6_tcp_TCP_CONGESTION(0xffffffffffffffff, 0x6, 0xd, 0x0, 0x0) ioctl$sock_inet6_tcp_SIOCOUTQNSD(0xffffffffffffffff, 0x894b, 0x0) socket(0x0, 0x0, 0x0) shutdown(r2, 0x1) recvfrom$inet6(r2, &(0x7f0000000000)=""/35, 0xffffffffffffff13, 0x100, &(0x7f0000001880)={0xa, 0x0, 0x0, @mcast2}, 0x970000) r3 = accept4(r1, 0x0, 0x0, 0x0) sendto$inet6(r3, &(0x7f00000000c0), 0xfffffdda, 0x0, 0x0, 0x600000000000004) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x0, 0x28011, r0, 0x0) [ 672.764311][ T36] audit: type=1400 audit(1630587125.143:253): lsm=SMACK fn=smk_ipv6_check action=denied subject="_" object="(#-A[)!}(C4" requested=w pid=4855 comm="syz-executor.1" dest=8782 12:52:05 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x3, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket$inet6(0xa, 0x80003, 0x7) connect$inet6(r1, &(0x7f0000000040), 0x1c) getsockopt$inet6_buf(r1, 0x29, 0x3d, &(0x7f0000000080)=""/144, &(0x7f0000000140)=0x90) 12:52:05 executing program 5: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000000)={0x58, 0x2, 0x6, 0x5, 0x0, 0x0, {}, [@IPSET_ATTR_FAMILY={0x5, 0x5, 0xa}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}, @IPSET_ATTR_REVISION={0x5}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_DATA={0xc, 0x7, 0x0, 0x1, [@IPSET_ATTR_CADT_FLAGS={0x8, 0x11}]}, @IPSET_ATTR_TYPENAME={0x11, 0x3, 'hash:net,net\x00'}]}, 0x58}}, 0x0) 12:52:05 executing program 3: setsockopt$IP6T_SO_SET_REPLACE(0xffffffffffffffff, 0x29, 0x40, &(0x7f0000000140)=@raw={'raw\x00', 0x9, 0x3, 0x2d0, 0xf0, 0xffffffff, 0xffffffff, 0xf0, 0xffffffff, 0x258, 0xffffffff, 0xffffffff, 0x258, 0xffffffff, 0x3, 0x0, {[{{@ipv6={@remote, @loopback, [], [], 'wlan0\x00', 'veth0_to_bridge\x00', {}, {}, 0x0, 0x0, 0x4}, 0x0, 0xd0, 0xf0, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@NOTRACK={0x20}}, {{@uncond, 0x0, 0xa8, 0x110}, @unspec=@CT2={0x68, 'CT\x00', 0x2, {0x0, 0x0, 0x0, 0x0, 'syz1\x00', 'syz0\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x330) setsockopt$inet6_MCAST_MSFILTER(0xffffffffffffffff, 0x29, 0x30, &(0x7f0000000080)=ANY=[@ANYBLOB="01000000000000000a00000000000000ff01000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009444000000000000000000000005"], 0x310) r0 = socket(0x10, 0x803, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) setsockopt$inet6_MCAST_JOIN_GROUP(r1, 0x29, 0x2a, &(0x7f0000fca000)={0x100000001, {{0xa, 0x0, 0x0, @mcast1}}}, 0x88) setsockopt$inet6_MCAST_MSFILTER(r1, 0x29, 0x30, &(0x7f0000000080)=ANY=[], 0x310) dup2(r0, r1) 12:52:05 executing program 4: r0 = creat(&(0x7f0000000040)='./bus\x00', 0x0) fcntl$lock(r0, 0x26, &(0x7f0000000180)={0x1}) r1 = creat(&(0x7f0000000040)='./bus\x00', 0x0) fcntl$lock(r1, 0x7, &(0x7f0000000080)={0x1}) close(r1) close(r0) 12:52:05 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket(0x10, 0x3, 0x0) r2 = socket$packet(0x11, 0x2, 0x300) ioctl$sock_SIOCGIFINDEX(r2, 0x8933, &(0x7f0000000080)={'syz_tun\x00', 0x0}) sendmsg$nl_route_sched(r1, &(0x7f00000007c0)={0x0, 0x0, &(0x7f0000000780)={&(0x7f00000000c0)=@newqdisc={0x48, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r3, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_fq_codel={{0xd}, {0x14, 0x2, [@TCA_FQ_CODEL_ECN={0x8}, @TCA_FQ_CODEL_QUANTUM={0x8}]}}]}, 0x48}}, 0x0) [ 672.844299][ T4823] BTRFS info (device loop0): enabling ssd optimizations 12:52:05 executing program 5: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000000)={0x58, 0x2, 0x6, 0x5, 0x0, 0x0, {}, [@IPSET_ATTR_FAMILY={0x5, 0x5, 0xa}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}, @IPSET_ATTR_REVISION={0x5}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_DATA={0xc, 0x7, 0x0, 0x1, [@IPSET_ATTR_CADT_FLAGS={0x8, 0x11}]}, @IPSET_ATTR_TYPENAME={0x11, 0x3, 'hash:net,net\x00'}]}, 0x58}}, 0x0) 12:52:05 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket(0x10, 0x3, 0x0) r2 = socket$packet(0x11, 0x2, 0x300) ioctl$sock_SIOCGIFINDEX(r2, 0x8933, &(0x7f0000000080)={'syz_tun\x00', 0x0}) sendmsg$nl_route_sched(r1, &(0x7f00000007c0)={0x0, 0x0, &(0x7f0000000780)={&(0x7f00000000c0)=@newqdisc={0x48, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r3, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_fq_codel={{0xd}, {0x14, 0x2, [@TCA_FQ_CODEL_ECN={0x8}, @TCA_FQ_CODEL_QUANTUM={0x8}]}}]}, 0x48}}, 0x0) 12:52:05 executing program 3: setsockopt$IP6T_SO_SET_REPLACE(0xffffffffffffffff, 0x29, 0x40, &(0x7f0000000140)=@raw={'raw\x00', 0x9, 0x3, 0x2d0, 0xf0, 0xffffffff, 0xffffffff, 0xf0, 0xffffffff, 0x258, 0xffffffff, 0xffffffff, 0x258, 0xffffffff, 0x3, 0x0, {[{{@ipv6={@remote, @loopback, [], [], 'wlan0\x00', 'veth0_to_bridge\x00', {}, {}, 0x0, 0x0, 0x4}, 0x0, 0xd0, 0xf0, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@NOTRACK={0x20}}, {{@uncond, 0x0, 0xa8, 0x110}, @unspec=@CT2={0x68, 'CT\x00', 0x2, {0x0, 0x0, 0x0, 0x0, 'syz1\x00', 'syz0\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x330) setsockopt$inet6_MCAST_MSFILTER(0xffffffffffffffff, 0x29, 0x30, &(0x7f0000000080)=ANY=[@ANYBLOB="01000000000000000a00000000000000ff01000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009444000000000000000000000005"], 0x310) r0 = socket(0x10, 0x803, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) setsockopt$inet6_MCAST_JOIN_GROUP(r1, 0x29, 0x2a, &(0x7f0000fca000)={0x100000001, {{0xa, 0x0, 0x0, @mcast1}}}, 0x88) setsockopt$inet6_MCAST_MSFILTER(r1, 0x29, 0x30, &(0x7f0000000080)=ANY=[], 0x310) dup2(r0, r1) 12:52:05 executing program 5: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000000)={0x58, 0x2, 0x6, 0x5, 0x0, 0x0, {}, [@IPSET_ATTR_FAMILY={0x5, 0x5, 0xa}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}, @IPSET_ATTR_REVISION={0x5}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_DATA={0xc, 0x7, 0x0, 0x1, [@IPSET_ATTR_CADT_FLAGS={0x8, 0x11}]}, @IPSET_ATTR_TYPENAME={0x11, 0x3, 'hash:net,net\x00'}]}, 0x58}}, 0x0) 12:52:05 executing program 4: r0 = creat(&(0x7f0000000040)='./bus\x00', 0x0) fcntl$lock(r0, 0x26, &(0x7f0000000180)={0x1}) r1 = creat(&(0x7f0000000040)='./bus\x00', 0x0) fcntl$lock(r1, 0x7, &(0x7f0000000080)={0x1}) close(r1) close(r0) 12:52:05 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket(0x10, 0x3, 0x0) r2 = socket$packet(0x11, 0x2, 0x300) ioctl$sock_SIOCGIFINDEX(r2, 0x8933, &(0x7f0000000080)={'syz_tun\x00', 0x0}) sendmsg$nl_route_sched(r1, &(0x7f00000007c0)={0x0, 0x0, &(0x7f0000000780)={&(0x7f00000000c0)=@newqdisc={0x48, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r3, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_fq_codel={{0xd}, {0x14, 0x2, [@TCA_FQ_CODEL_ECN={0x8}, @TCA_FQ_CODEL_QUANTUM={0x8}]}}]}, 0x48}}, 0x0) [ 673.084311][ T36] audit: type=1400 audit(1630587125.463:254): lsm=SMACK fn=smk_ipv6_check action=denied subject="_" object="(#-A[)!}(C4" requested=w pid=4901 comm="syz-executor.0" [ 673.141342][ T36] audit: type=1400 audit(1630587125.493:255): lsm=SMACK fn=smk_ipv6_check action=denied subject="_" object="(#-A[)!}(C4" requested=w pid=4901 comm="syz-executor.0" 12:52:05 executing program 1: r0 = syz_open_dev$binderN(&(0x7f0000000000), 0x0, 0x0) ioctl$BINDER_SET_CONTEXT_MGR_EXT(r0, 0x4018620d, &(0x7f00000000c0)) 12:52:05 executing program 0: setsockopt$IP6T_SO_SET_REPLACE(0xffffffffffffffff, 0x29, 0x40, &(0x7f0000000140)=@raw={'raw\x00', 0x9, 0x3, 0x2d0, 0xf0, 0xffffffff, 0xffffffff, 0xf0, 0xffffffff, 0x258, 0xffffffff, 0xffffffff, 0x258, 0xffffffff, 0x3, 0x0, {[{{@ipv6={@remote, @loopback, [], [], 'wlan0\x00', 'veth0_to_bridge\x00', {}, {}, 0x0, 0x0, 0x4}, 0x0, 0xd0, 0xf0, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@NOTRACK={0x20}}, {{@uncond, 0x0, 0xa8, 0x110}, @unspec=@CT2={0x68, 'CT\x00', 0x2, {0x0, 0x0, 0x0, 0x0, 'syz1\x00', 'syz0\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x330) setsockopt$inet6_MCAST_MSFILTER(0xffffffffffffffff, 0x29, 0x30, &(0x7f0000000080)=ANY=[@ANYBLOB="01000000000000000a00000000000000ff01000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009444000000000000000000000005"], 0x310) r0 = socket(0x10, 0x803, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) setsockopt$inet6_MCAST_JOIN_GROUP(r1, 0x29, 0x2a, &(0x7f0000fca000)={0x100000001, {{0xa, 0x0, 0x0, @mcast1}}}, 0x88) setsockopt$inet6_MCAST_MSFILTER(r1, 0x29, 0x30, &(0x7f0000000080)=ANY=[], 0x310) dup2(r0, r1) 12:52:05 executing program 3: setsockopt$IP6T_SO_SET_REPLACE(0xffffffffffffffff, 0x29, 0x40, &(0x7f0000000140)=@raw={'raw\x00', 0x9, 0x3, 0x2d0, 0xf0, 0xffffffff, 0xffffffff, 0xf0, 0xffffffff, 0x258, 0xffffffff, 0xffffffff, 0x258, 0xffffffff, 0x3, 0x0, {[{{@ipv6={@remote, @loopback, [], [], 'wlan0\x00', 'veth0_to_bridge\x00', {}, {}, 0x0, 0x0, 0x4}, 0x0, 0xd0, 0xf0, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@NOTRACK={0x20}}, {{@uncond, 0x0, 0xa8, 0x110}, @unspec=@CT2={0x68, 'CT\x00', 0x2, {0x0, 0x0, 0x0, 0x0, 'syz1\x00', 'syz0\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x330) setsockopt$inet6_MCAST_MSFILTER(0xffffffffffffffff, 0x29, 0x30, &(0x7f0000000080)=ANY=[@ANYBLOB="01000000000000000a00000000000000ff01000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009444000000000000000000000005"], 0x310) r0 = socket(0x10, 0x803, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) setsockopt$inet6_MCAST_JOIN_GROUP(r1, 0x29, 0x2a, &(0x7f0000fca000)={0x100000001, {{0xa, 0x0, 0x0, @mcast1}}}, 0x88) setsockopt$inet6_MCAST_MSFILTER(r1, 0x29, 0x30, &(0x7f0000000080)=ANY=[], 0x310) dup2(r0, r1) 12:52:05 executing program 5: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000000)={0x58, 0x2, 0x6, 0x5, 0x0, 0x0, {}, [@IPSET_ATTR_FAMILY={0x5, 0x5, 0xa}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}, @IPSET_ATTR_REVISION={0x5}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_DATA={0xc, 0x7, 0x0, 0x1, [@IPSET_ATTR_CADT_FLAGS={0x8, 0x11}]}, @IPSET_ATTR_TYPENAME={0x11, 0x3, 'hash:net,net\x00'}]}, 0x58}}, 0x0) 12:52:05 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket(0x10, 0x3, 0x0) r2 = socket$packet(0x11, 0x2, 0x300) ioctl$sock_SIOCGIFINDEX(r2, 0x8933, &(0x7f0000000080)={'syz_tun\x00', 0x0}) sendmsg$nl_route_sched(r1, &(0x7f00000007c0)={0x0, 0x0, &(0x7f0000000780)={&(0x7f00000000c0)=@newqdisc={0x48, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r3, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_fq_codel={{0xd}, {0x14, 0x2, [@TCA_FQ_CODEL_ECN={0x8}, @TCA_FQ_CODEL_QUANTUM={0x8}]}}]}, 0x48}}, 0x0) 12:52:05 executing program 4: r0 = creat(&(0x7f0000000040)='./bus\x00', 0x0) fcntl$lock(r0, 0x26, &(0x7f0000000180)={0x1}) r1 = creat(&(0x7f0000000040)='./bus\x00', 0x0) fcntl$lock(r1, 0x7, &(0x7f0000000080)={0x1}) close(r1) close(r0) 12:52:06 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000001b80)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r0, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0xd, 0x4, &(0x7f00000000c0)=ANY=[@ANYBLOB="b400000000000000611180000000000046000000000000009500000000000000abbb1937ea5badc10959c63aa9ed60beb8251b729d213d0654a8667a3fd06f01c655b3a30bc5151f2278862cfa841190646a468d0a78edd8c0581e89011432bf2449bbedccbcdb7f42719e7cd523c5e543cd2ed3612834763ac4facb547e159ea1c1663725bf1488bb463602b3cbf682fe00273597172830898c542c24d02ae1feb254d2c7dde9024ad222eb23b6e29e57b8fb42d8d4e11df61d0644704ed8855a8182a94391802a4d24b9a686950a43a43005aa9fe1ebe317426816f3d9f9e5b0523fff2292797b6d00bda931262c787b03a5f52fd26ed99dae8777aa45f384cdd03bb21c2355f6c0e1a5d78195ee90803255cf722035c198d40296a11f9c149308674320d2ecdf73aaa4e53510ffbc97086596585450c00197a684e2d75a42ea56bd35c400c17641643ea61363060aeed522bcf87408871694f7be8c92796612cdc6c42b3a08005149fa529af4406dd4c6bf7bb2cac5b3d74112ec60b8c989a49766287ed21551ba17ab8e14be6211ba600acc6c16c6c1ee4117e91d7aafa2ce0000000000000000000060366ea5dc626a82140506035b5be9217ff9f484d9b0ee71170306e16ea590538d8b5b3f9724d3693164450fc23eb1ac17669c8fbd4c0cedb3eb93c112d4963ee60a446eaf8cf77b7590c3b4ce7bf17480e1375d274376dec004a1a983da8cf34ecbf6aac4694688674a2a15be38ec1a4f42083f22dac779335703dcd3acf2dd1408f468aa7a6c7f00000000000000367369cd8ed7f688db486ab44c0ba16170547a9738257436e656f6f62b06a386e0eb692e1fda8d43db2722f82706746ad938eec601bef4172abe12d3232ee5f3e100000000ef375b6ef69a76843db530da06bb78510dc9732da57e14e0f5b399adf5cd7d971b5e981e6abdb9d7187c807dae69865984266b174b19292cf1dc27ba945cf06e067b28dd7f3587064860423c4d53a01e6c5334a19fb5ab26ab882d54e415e02c9600"/747], &(0x7f0000000080)='GPL\x00', 0x4, 0x3e0, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x0, 0x10, &(0x7f0000000000), 0x76}, 0x48) 12:52:06 executing program 1: r0 = socket(0x25, 0x1, 0x0) sendmmsg$sock(r0, &(0x7f0000001680)=[{{0x0, 0x0, 0x0}}, {{0x0, 0x0, &(0x7f0000000ec0)=[{&(0x7f0000000e40)='D', 0x1}], 0x1}}], 0x2, 0x20044040) 12:52:06 executing program 5: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000000c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) ioctl$KVM_CREATE_IRQCHIP(r1, 0xae60) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000fe8000/0x18000)=nil, &(0x7f0000000100)=[@text64={0x40, &(0x7f0000000180)="c744240000000000c74424020d000000c7442406000000000f011c24b805000000b9140000000f01d9c74424001f010000c744240200900000ff1c24c744240008000000c744240200000100c7442406000000000f011c24c42298f50ab9d00a00000f32642e0f01c5c4a2a1a797131f0000c744240078000000c74424026a4491b1c7442406000000000f01142441da9106c9cd7c", 0x95}], 0x1, 0x0, &(0x7f0000000280)=[@efer, @dstype3], 0x2) ioctl$KVM_GET_VCPU_EVENTS(r2, 0x4400ae8f, &(0x7f0000000040)) ioctl$KVM_RUN(r2, 0xae80, 0x0) 12:52:06 executing program 0: setsockopt$IP6T_SO_SET_REPLACE(0xffffffffffffffff, 0x29, 0x40, &(0x7f0000000140)=@raw={'raw\x00', 0x9, 0x3, 0x2d0, 0xf0, 0xffffffff, 0xffffffff, 0xf0, 0xffffffff, 0x258, 0xffffffff, 0xffffffff, 0x258, 0xffffffff, 0x3, 0x0, {[{{@ipv6={@remote, @loopback, [], [], 'wlan0\x00', 'veth0_to_bridge\x00', {}, {}, 0x0, 0x0, 0x4}, 0x0, 0xd0, 0xf0, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@NOTRACK={0x20}}, {{@uncond, 0x0, 0xa8, 0x110}, @unspec=@CT2={0x68, 'CT\x00', 0x2, {0x0, 0x0, 0x0, 0x0, 'syz1\x00', 'syz0\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x330) setsockopt$inet6_MCAST_MSFILTER(0xffffffffffffffff, 0x29, 0x30, &(0x7f0000000080)=ANY=[@ANYBLOB="01000000000000000a00000000000000ff01000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009444000000000000000000000005"], 0x310) r0 = socket(0x10, 0x803, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) setsockopt$inet6_MCAST_JOIN_GROUP(r1, 0x29, 0x2a, &(0x7f0000fca000)={0x100000001, {{0xa, 0x0, 0x0, @mcast1}}}, 0x88) setsockopt$inet6_MCAST_MSFILTER(r1, 0x29, 0x30, &(0x7f0000000080)=ANY=[], 0x310) dup2(r0, r1) 12:52:06 executing program 3: setsockopt$IP6T_SO_SET_REPLACE(0xffffffffffffffff, 0x29, 0x40, &(0x7f0000000140)=@raw={'raw\x00', 0x9, 0x3, 0x2d0, 0xf0, 0xffffffff, 0xffffffff, 0xf0, 0xffffffff, 0x258, 0xffffffff, 0xffffffff, 0x258, 0xffffffff, 0x3, 0x0, {[{{@ipv6={@remote, @loopback, [], [], 'wlan0\x00', 'veth0_to_bridge\x00', {}, {}, 0x0, 0x0, 0x4}, 0x0, 0xd0, 0xf0, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@NOTRACK={0x20}}, {{@uncond, 0x0, 0xa8, 0x110}, @unspec=@CT2={0x68, 'CT\x00', 0x2, {0x0, 0x0, 0x0, 0x0, 'syz1\x00', 'syz0\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x330) setsockopt$inet6_MCAST_MSFILTER(0xffffffffffffffff, 0x29, 0x30, &(0x7f0000000080)=ANY=[@ANYBLOB="01000000000000000a00000000000000ff01000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009444000000000000000000000005"], 0x310) r0 = socket(0x10, 0x803, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) setsockopt$inet6_MCAST_JOIN_GROUP(r1, 0x29, 0x2a, &(0x7f0000fca000)={0x100000001, {{0xa, 0x0, 0x0, @mcast1}}}, 0x88) setsockopt$inet6_MCAST_MSFILTER(r1, 0x29, 0x30, &(0x7f0000000080)=ANY=[], 0x310) dup2(r0, r1) 12:52:06 executing program 4: r0 = creat(&(0x7f0000000040)='./bus\x00', 0x0) fcntl$lock(r0, 0x26, &(0x7f0000000180)={0x1}) r1 = creat(&(0x7f0000000040)='./bus\x00', 0x0) fcntl$lock(r1, 0x7, &(0x7f0000000080)={0x1}) close(r1) close(r0) 12:52:06 executing program 1: r0 = socket(0x25, 0x1, 0x0) sendmmsg$sock(r0, &(0x7f0000001680)=[{{0x0, 0x0, 0x0}}, {{0x0, 0x0, &(0x7f0000000ec0)=[{&(0x7f0000000e40)='D', 0x1}], 0x1}}], 0x2, 0x20044040) 12:52:06 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000001b80)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r0, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0xd, 0x4, &(0x7f00000000c0)=ANY=[@ANYBLOB="b400000000000000611180000000000046000000000000009500000000000000abbb1937ea5badc10959c63aa9ed60beb8251b729d213d0654a8667a3fd06f01c655b3a30bc5151f2278862cfa841190646a468d0a78edd8c0581e89011432bf2449bbedccbcdb7f42719e7cd523c5e543cd2ed3612834763ac4facb547e159ea1c1663725bf1488bb463602b3cbf682fe00273597172830898c542c24d02ae1feb254d2c7dde9024ad222eb23b6e29e57b8fb42d8d4e11df61d0644704ed8855a8182a94391802a4d24b9a686950a43a43005aa9fe1ebe317426816f3d9f9e5b0523fff2292797b6d00bda931262c787b03a5f52fd26ed99dae8777aa45f384cdd03bb21c2355f6c0e1a5d78195ee90803255cf722035c198d40296a11f9c149308674320d2ecdf73aaa4e53510ffbc97086596585450c00197a684e2d75a42ea56bd35c400c17641643ea61363060aeed522bcf87408871694f7be8c92796612cdc6c42b3a08005149fa529af4406dd4c6bf7bb2cac5b3d74112ec60b8c989a49766287ed21551ba17ab8e14be6211ba600acc6c16c6c1ee4117e91d7aafa2ce0000000000000000000060366ea5dc626a82140506035b5be9217ff9f484d9b0ee71170306e16ea590538d8b5b3f9724d3693164450fc23eb1ac17669c8fbd4c0cedb3eb93c112d4963ee60a446eaf8cf77b7590c3b4ce7bf17480e1375d274376dec004a1a983da8cf34ecbf6aac4694688674a2a15be38ec1a4f42083f22dac779335703dcd3acf2dd1408f468aa7a6c7f00000000000000367369cd8ed7f688db486ab44c0ba16170547a9738257436e656f6f62b06a386e0eb692e1fda8d43db2722f82706746ad938eec601bef4172abe12d3232ee5f3e100000000ef375b6ef69a76843db530da06bb78510dc9732da57e14e0f5b399adf5cd7d971b5e981e6abdb9d7187c807dae69865984266b174b19292cf1dc27ba945cf06e067b28dd7f3587064860423c4d53a01e6c5334a19fb5ab26ab882d54e415e02c9600"/747], &(0x7f0000000080)='GPL\x00', 0x4, 0x3e0, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x0, 0x10, &(0x7f0000000000), 0x76}, 0x48) 12:52:06 executing program 0: setsockopt$IP6T_SO_SET_REPLACE(0xffffffffffffffff, 0x29, 0x40, &(0x7f0000000140)=@raw={'raw\x00', 0x9, 0x3, 0x2d0, 0xf0, 0xffffffff, 0xffffffff, 0xf0, 0xffffffff, 0x258, 0xffffffff, 0xffffffff, 0x258, 0xffffffff, 0x3, 0x0, {[{{@ipv6={@remote, @loopback, [], [], 'wlan0\x00', 'veth0_to_bridge\x00', {}, {}, 0x0, 0x0, 0x4}, 0x0, 0xd0, 0xf0, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@NOTRACK={0x20}}, {{@uncond, 0x0, 0xa8, 0x110}, @unspec=@CT2={0x68, 'CT\x00', 0x2, {0x0, 0x0, 0x0, 0x0, 'syz1\x00', 'syz0\x00'}}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x330) setsockopt$inet6_MCAST_MSFILTER(0xffffffffffffffff, 0x29, 0x30, &(0x7f0000000080)=ANY=[@ANYBLOB="01000000000000000a00000000000000ff01000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009444000000000000000000000005"], 0x310) r0 = socket(0x10, 0x803, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) setsockopt$inet6_MCAST_JOIN_GROUP(r1, 0x29, 0x2a, &(0x7f0000fca000)={0x100000001, {{0xa, 0x0, 0x0, @mcast1}}}, 0x88) setsockopt$inet6_MCAST_MSFILTER(r1, 0x29, 0x30, &(0x7f0000000080)=ANY=[], 0x310) dup2(r0, r1) 12:52:06 executing program 3: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f0000001080)={0x0, 0x0, &(0x7f0000000080)={&(0x7f00000000c0)={0x64, 0x2, 0x6, 0x5, 0xa, 0x0, {}, [@IPSET_ATTR_TYPENAME={0x10, 0x3, 'bitmap:port\x00'}, @IPSET_ATTR_REVISION={0x5}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}, @IPSET_ATTR_FAMILY={0x5}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_DATA={0x1c, 0x7, 0x0, 0x1, [@IPSET_ATTR_PORT={0x6}, @IPSET_ATTR_PORT_TO={0x6}, @IPSET_ATTR_TIMEOUT={0x8}]}]}, 0x64}}, 0x0) 12:52:06 executing program 1: r0 = socket(0x25, 0x1, 0x0) sendmmsg$sock(r0, &(0x7f0000001680)=[{{0x0, 0x0, 0x0}}, {{0x0, 0x0, &(0x7f0000000ec0)=[{&(0x7f0000000e40)='D', 0x1}], 0x1}}], 0x2, 0x20044040) 12:52:06 executing program 5: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000000c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) ioctl$KVM_CREATE_IRQCHIP(r1, 0xae60) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000fe8000/0x18000)=nil, &(0x7f0000000100)=[@text64={0x40, &(0x7f0000000180)="c744240000000000c74424020d000000c7442406000000000f011c24b805000000b9140000000f01d9c74424001f010000c744240200900000ff1c24c744240008000000c744240200000100c7442406000000000f011c24c42298f50ab9d00a00000f32642e0f01c5c4a2a1a797131f0000c744240078000000c74424026a4491b1c7442406000000000f01142441da9106c9cd7c", 0x95}], 0x1, 0x0, &(0x7f0000000280)=[@efer, @dstype3], 0x2) ioctl$KVM_GET_VCPU_EVENTS(r2, 0x4400ae8f, &(0x7f0000000040)) ioctl$KVM_RUN(r2, 0xae80, 0x0) 12:52:06 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000001b80)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r0, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0xd, 0x4, &(0x7f00000000c0)=ANY=[@ANYBLOB="b400000000000000611180000000000046000000000000009500000000000000abbb1937ea5badc10959c63aa9ed60beb8251b729d213d0654a8667a3fd06f01c655b3a30bc5151f2278862cfa841190646a468d0a78edd8c0581e89011432bf2449bbedccbcdb7f42719e7cd523c5e543cd2ed3612834763ac4facb547e159ea1c1663725bf1488bb463602b3cbf682fe00273597172830898c542c24d02ae1feb254d2c7dde9024ad222eb23b6e29e57b8fb42d8d4e11df61d0644704ed8855a8182a94391802a4d24b9a686950a43a43005aa9fe1ebe317426816f3d9f9e5b0523fff2292797b6d00bda931262c787b03a5f52fd26ed99dae8777aa45f384cdd03bb21c2355f6c0e1a5d78195ee90803255cf722035c198d40296a11f9c149308674320d2ecdf73aaa4e53510ffbc97086596585450c00197a684e2d75a42ea56bd35c400c17641643ea61363060aeed522bcf87408871694f7be8c92796612cdc6c42b3a08005149fa529af4406dd4c6bf7bb2cac5b3d74112ec60b8c989a49766287ed21551ba17ab8e14be6211ba600acc6c16c6c1ee4117e91d7aafa2ce0000000000000000000060366ea5dc626a82140506035b5be9217ff9f484d9b0ee71170306e16ea590538d8b5b3f9724d3693164450fc23eb1ac17669c8fbd4c0cedb3eb93c112d4963ee60a446eaf8cf77b7590c3b4ce7bf17480e1375d274376dec004a1a983da8cf34ecbf6aac4694688674a2a15be38ec1a4f42083f22dac779335703dcd3acf2dd1408f468aa7a6c7f00000000000000367369cd8ed7f688db486ab44c0ba16170547a9738257436e656f6f62b06a386e0eb692e1fda8d43db2722f82706746ad938eec601bef4172abe12d3232ee5f3e100000000ef375b6ef69a76843db530da06bb78510dc9732da57e14e0f5b399adf5cd7d971b5e981e6abdb9d7187c807dae69865984266b174b19292cf1dc27ba945cf06e067b28dd7f3587064860423c4d53a01e6c5334a19fb5ab26ab882d54e415e02c9600"/747], &(0x7f0000000080)='GPL\x00', 0x4, 0x3e0, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x0, 0x10, &(0x7f0000000000), 0x76}, 0x48) 12:52:06 executing program 4: r0 = syz_open_procfs(0x0, &(0x7f0000000000)='net/igmp\x00') preadv(r0, &(0x7f0000000400)=[{&(0x7f0000000140)=""/93, 0x5d}], 0x1, 0x359, 0x0) 12:52:06 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$v7(&(0x7f0000000240), &(0x7f0000000280)='./file0\x00', 0x0, 0x0, &(0x7f0000001540), 0x0, &(0x7f00000015c0)) 12:52:06 executing program 3: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f0000001080)={0x0, 0x0, &(0x7f0000000080)={&(0x7f00000000c0)={0x64, 0x2, 0x6, 0x5, 0xa, 0x0, {}, [@IPSET_ATTR_TYPENAME={0x10, 0x3, 'bitmap:port\x00'}, @IPSET_ATTR_REVISION={0x5}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}, @IPSET_ATTR_FAMILY={0x5}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_DATA={0x1c, 0x7, 0x0, 0x1, [@IPSET_ATTR_PORT={0x6}, @IPSET_ATTR_PORT_TO={0x6}, @IPSET_ATTR_TIMEOUT={0x8}]}]}, 0x64}}, 0x0) 12:52:06 executing program 1: r0 = socket(0x25, 0x1, 0x0) sendmmsg$sock(r0, &(0x7f0000001680)=[{{0x0, 0x0, 0x0}}, {{0x0, 0x0, &(0x7f0000000ec0)=[{&(0x7f0000000e40)='D', 0x1}], 0x1}}], 0x2, 0x20044040) 12:52:06 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000001b80)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r0, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0xd, 0x4, &(0x7f00000000c0)=ANY=[@ANYBLOB="b400000000000000611180000000000046000000000000009500000000000000abbb1937ea5badc10959c63aa9ed60beb8251b729d213d0654a8667a3fd06f01c655b3a30bc5151f2278862cfa841190646a468d0a78edd8c0581e89011432bf2449bbedccbcdb7f42719e7cd523c5e543cd2ed3612834763ac4facb547e159ea1c1663725bf1488bb463602b3cbf682fe00273597172830898c542c24d02ae1feb254d2c7dde9024ad222eb23b6e29e57b8fb42d8d4e11df61d0644704ed8855a8182a94391802a4d24b9a686950a43a43005aa9fe1ebe317426816f3d9f9e5b0523fff2292797b6d00bda931262c787b03a5f52fd26ed99dae8777aa45f384cdd03bb21c2355f6c0e1a5d78195ee90803255cf722035c198d40296a11f9c149308674320d2ecdf73aaa4e53510ffbc97086596585450c00197a684e2d75a42ea56bd35c400c17641643ea61363060aeed522bcf87408871694f7be8c92796612cdc6c42b3a08005149fa529af4406dd4c6bf7bb2cac5b3d74112ec60b8c989a49766287ed21551ba17ab8e14be6211ba600acc6c16c6c1ee4117e91d7aafa2ce0000000000000000000060366ea5dc626a82140506035b5be9217ff9f484d9b0ee71170306e16ea590538d8b5b3f9724d3693164450fc23eb1ac17669c8fbd4c0cedb3eb93c112d4963ee60a446eaf8cf77b7590c3b4ce7bf17480e1375d274376dec004a1a983da8cf34ecbf6aac4694688674a2a15be38ec1a4f42083f22dac779335703dcd3acf2dd1408f468aa7a6c7f00000000000000367369cd8ed7f688db486ab44c0ba16170547a9738257436e656f6f62b06a386e0eb692e1fda8d43db2722f82706746ad938eec601bef4172abe12d3232ee5f3e100000000ef375b6ef69a76843db530da06bb78510dc9732da57e14e0f5b399adf5cd7d971b5e981e6abdb9d7187c807dae69865984266b174b19292cf1dc27ba945cf06e067b28dd7f3587064860423c4d53a01e6c5334a19fb5ab26ab882d54e415e02c9600"/747], &(0x7f0000000080)='GPL\x00', 0x4, 0x3e0, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x0, 0x10, &(0x7f0000000000), 0x76}, 0x48) 12:52:06 executing program 5: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000000c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) ioctl$KVM_CREATE_IRQCHIP(r1, 0xae60) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000fe8000/0x18000)=nil, &(0x7f0000000100)=[@text64={0x40, &(0x7f0000000180)="c744240000000000c74424020d000000c7442406000000000f011c24b805000000b9140000000f01d9c74424001f010000c744240200900000ff1c24c744240008000000c744240200000100c7442406000000000f011c24c42298f50ab9d00a00000f32642e0f01c5c4a2a1a797131f0000c744240078000000c74424026a4491b1c7442406000000000f01142441da9106c9cd7c", 0x95}], 0x1, 0x0, &(0x7f0000000280)=[@efer, @dstype3], 0x2) ioctl$KVM_GET_VCPU_EVENTS(r2, 0x4400ae8f, &(0x7f0000000040)) ioctl$KVM_RUN(r2, 0xae80, 0x0) 12:52:06 executing program 4: r0 = syz_open_procfs(0x0, &(0x7f0000000000)='net/igmp\x00') preadv(r0, &(0x7f0000000400)=[{&(0x7f0000000140)=""/93, 0x5d}], 0x1, 0x359, 0x0) 12:52:06 executing program 1: r0 = socket$inet6(0xa, 0x3, 0x7) setsockopt$sock_linger(r0, 0x1, 0xd, &(0x7f0000000080)={0x1}, 0x8) close(r0) [ 674.065149][ T4990] VFS: could not find a valid V7 on loop0. 12:52:06 executing program 3: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f0000001080)={0x0, 0x0, &(0x7f0000000080)={&(0x7f00000000c0)={0x64, 0x2, 0x6, 0x5, 0xa, 0x0, {}, [@IPSET_ATTR_TYPENAME={0x10, 0x3, 'bitmap:port\x00'}, @IPSET_ATTR_REVISION={0x5}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}, @IPSET_ATTR_FAMILY={0x5}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_DATA={0x1c, 0x7, 0x0, 0x1, [@IPSET_ATTR_PORT={0x6}, @IPSET_ATTR_PORT_TO={0x6}, @IPSET_ATTR_TIMEOUT={0x8}]}]}, 0x64}}, 0x0) 12:52:06 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$v7(&(0x7f0000000240), &(0x7f0000000280)='./file0\x00', 0x0, 0x0, &(0x7f0000001540), 0x0, &(0x7f00000015c0)) 12:52:06 executing program 2: clone(0x3a3dd4008400af01, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = memfd_create(&(0x7f0000000040)='\x00\x00\x00\x00\x00\x00z\x9b\xb6\xe8t%\xfc\x02\x00\x00\x009\xa0\x8b\x14d\xa2\xa1\xa8!\xe8\xd1\xa0\x8a\xce0\x1c\xb7\xf1\xccm\xce\xd4\xdb\x89\xe5\x8f\xe2\xb6\xd6\x9cF\xbd\xff\x14\xec\xd4D\x8a\x1f\x1b\xf6\x18\xf3\xdc\x91\'\x06\\8\r\xfc\xeeG\xbeQ\xee\xf0\x99\x1e|C\xd8\x01\xd0\xf5\xbb}\xeb\x86P=\xe51\x9d,\xb7\xe6_M\xbe\x19\xea#\xff[\xd1\xc3\x9a\xa3\x1b\xf9\xe9\x1d \xce1\xc9\x9f\xb0\x14\xc2\xeb\xf9\xceE\xad\xa4\x92\f\xef\x87g\xb6\xabW\xac\rP\xf42\xb7\xc8\xaajnW\n\r\x802\xd7\x1b$\x95tO*\xf4\xae\xb8\xb8m\xbf\r\xd5\xbf*\xfd\xc7\x85\x1b\x8b\xe5\x97j`c\xe0\x88?\xda\x8a#t>r\xae\xe8\xc9)', 0x0) write$binfmt_elf64(r0, &(0x7f0000000340)=ANY=[@ANYBLOB="7f454c460200eeff0700004000c4a4f103003e0000399d9460c40a09000000000000b12ce1df66ea000014b6d341bf65bdfd74dafc2838"], 0x3c) execveat(r0, &(0x7f0000000100)='\x00', 0x0, 0x0, 0x1100) 12:52:06 executing program 5: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000000c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) ioctl$KVM_CREATE_IRQCHIP(r1, 0xae60) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000fe8000/0x18000)=nil, &(0x7f0000000100)=[@text64={0x40, &(0x7f0000000180)="c744240000000000c74424020d000000c7442406000000000f011c24b805000000b9140000000f01d9c74424001f010000c744240200900000ff1c24c744240008000000c744240200000100c7442406000000000f011c24c42298f50ab9d00a00000f32642e0f01c5c4a2a1a797131f0000c744240078000000c74424026a4491b1c7442406000000000f01142441da9106c9cd7c", 0x95}], 0x1, 0x0, &(0x7f0000000280)=[@efer, @dstype3], 0x2) ioctl$KVM_GET_VCPU_EVENTS(r2, 0x4400ae8f, &(0x7f0000000040)) ioctl$KVM_RUN(r2, 0xae80, 0x0) 12:52:06 executing program 1: r0 = socket$inet6(0xa, 0x3, 0x7) setsockopt$sock_linger(r0, 0x1, 0xd, &(0x7f0000000080)={0x1}, 0x8) close(r0) 12:52:06 executing program 3: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f0000001080)={0x0, 0x0, &(0x7f0000000080)={&(0x7f00000000c0)={0x64, 0x2, 0x6, 0x5, 0xa, 0x0, {}, [@IPSET_ATTR_TYPENAME={0x10, 0x3, 'bitmap:port\x00'}, @IPSET_ATTR_REVISION={0x5}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}, @IPSET_ATTR_FAMILY={0x5}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_DATA={0x1c, 0x7, 0x0, 0x1, [@IPSET_ATTR_PORT={0x6}, @IPSET_ATTR_PORT_TO={0x6}, @IPSET_ATTR_TIMEOUT={0x8}]}]}, 0x64}}, 0x0) 12:52:06 executing program 4: r0 = syz_open_procfs(0x0, &(0x7f0000000000)='net/igmp\x00') preadv(r0, &(0x7f0000000400)=[{&(0x7f0000000140)=""/93, 0x5d}], 0x1, 0x359, 0x0) 12:52:06 executing program 2: clone(0x3a3dd4008400af01, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = memfd_create(&(0x7f0000000040)='\x00\x00\x00\x00\x00\x00z\x9b\xb6\xe8t%\xfc\x02\x00\x00\x009\xa0\x8b\x14d\xa2\xa1\xa8!\xe8\xd1\xa0\x8a\xce0\x1c\xb7\xf1\xccm\xce\xd4\xdb\x89\xe5\x8f\xe2\xb6\xd6\x9cF\xbd\xff\x14\xec\xd4D\x8a\x1f\x1b\xf6\x18\xf3\xdc\x91\'\x06\\8\r\xfc\xeeG\xbeQ\xee\xf0\x99\x1e|C\xd8\x01\xd0\xf5\xbb}\xeb\x86P=\xe51\x9d,\xb7\xe6_M\xbe\x19\xea#\xff[\xd1\xc3\x9a\xa3\x1b\xf9\xe9\x1d \xce1\xc9\x9f\xb0\x14\xc2\xeb\xf9\xceE\xad\xa4\x92\f\xef\x87g\xb6\xabW\xac\rP\xf42\xb7\xc8\xaajnW\n\r\x802\xd7\x1b$\x95tO*\xf4\xae\xb8\xb8m\xbf\r\xd5\xbf*\xfd\xc7\x85\x1b\x8b\xe5\x97j`c\xe0\x88?\xda\x8a#t>r\xae\xe8\xc9)', 0x0) write$binfmt_elf64(r0, &(0x7f0000000340)=ANY=[@ANYBLOB="7f454c460200eeff0700004000c4a4f103003e0000399d9460c40a09000000000000b12ce1df66ea000014b6d341bf65bdfd74dafc2838"], 0x3c) execveat(r0, &(0x7f0000000100)='\x00', 0x0, 0x0, 0x1100) [ 674.269287][ T5016] VFS: could not find a valid V7 on loop0. 12:52:06 executing program 1: r0 = socket$inet6(0xa, 0x3, 0x7) setsockopt$sock_linger(r0, 0x1, 0xd, &(0x7f0000000080)={0x1}, 0x8) close(r0) 12:52:06 executing program 3: syz_emit_ethernet(0x5e, &(0x7f00000004c0)={@random="676e59748f7c", @multicast, @void, {@ipv6={0x86dd, @tipc_packet={0x0, 0x6, "b3ce53", 0x28, 0x4, 0x0, @private1, @mcast2, {[], @payload_named={{{{{0x28, 0x0, 0x0, 0x0, 0x0, 0xa}}}}}}}}}}, 0x0) 12:52:06 executing program 4: r0 = syz_open_procfs(0x0, &(0x7f0000000000)='net/igmp\x00') preadv(r0, &(0x7f0000000400)=[{&(0x7f0000000140)=""/93, 0x5d}], 0x1, 0x359, 0x0) 12:52:06 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$v7(&(0x7f0000000240), &(0x7f0000000280)='./file0\x00', 0x0, 0x0, &(0x7f0000001540), 0x0, &(0x7f00000015c0)) 12:52:06 executing program 1: r0 = socket$inet6(0xa, 0x3, 0x7) setsockopt$sock_linger(r0, 0x1, 0xd, &(0x7f0000000080)={0x1}, 0x8) close(r0) 12:52:06 executing program 5: openat(0xffffffffffffff9c, &(0x7f000000c380)='./file0\x00', 0x40, 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000100)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000100000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000103c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000000040)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000e3c0)="000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba045abcd5dfc67d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000209bfd66eea210560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001354c4b600", 0x2000, &(0x7f00000062c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006340)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) r2 = openat(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x1c1401, 0x0) syz_fuse_handle_req(r0, &(0x7f0000002140)="d23d5663422096c70d65f08cdbf2314bf6bb40a9cacb2aad6349ea9ea6e7cff01ca62558676c93a258ab27eb5f462d1e8ba7015a3deee2ffe25fe6775ea395c2c1b92044d5c571dcfae5eae8af17d4cf05e68d37c0b13d326813f143873cb8c16805b63ed358e78ac9b6efc8101d083ffa99dced434133fa34bf2865b1e2b71325bd359fa62d4b01bbe862c9a5bdabe4b2ee29fd44d897ea6ffd89804b24093639638683187882addfb562eaf3a723b5e71aa58b94b67bd40771243806ffee7b10e1b753437de8cbc2d50dc6450247e2f02d4b2f91044f94ff4ab56878872347c63444d26619b34b2df31a993640b18e802d4465f513c73683f766d5986bf496a6b3272cfc91b97c708240c4dd727bc3b5752ba6b095a30358674c212c8359533cc3a0412154f8f3ff37b2140686787ab49cf6ae3275ab7a4edf8af266ff97ea4f134531d43e8399eb39e5f22941e8b6602aa8be87b74cb66ba58d4fe6d91d3055a8c2a1ddb6271bb21bc8607f06b1e215d113001fe98682f17dcc1a1d95e7f1d1009cf07673eecad819dbd57779b6e08f70b2fdbb10a50ee843917d881edbf66804750df08d97fc060b6c541ecfeae87fc288de6113e89360a193f32847d513463c72a907f8beeb3917c786a4f763db05a79b41184d514bd4db14415fbd99af35e46216f660c7d5d847e6efb03316806cec599b113df79c99f053eb4e11d3e2ee20d17804bc883effde18daf977dc594a137109e9108cf759cc677c3570749b7cf275a954c1d53bb0d5761136e781b4cc2d07183ae5389016f6c21706e3a93cc264b5a57ef8d064e4204888a7f73695bacf073788a5deebc1204cf8d5be2fbbf3b78debdf1e7e591c5c326842172413eb96528d6c08638a659cb96e484ef6ce893b2a7b6db28cdf2d18682b614bb47298d25adade5873d12abe9139780c3b7799b0b487c32ded9ff4d22c40945deee1dcf63c36bf2ec00010f84ef391d79053ed36005b37489eb24a506aa3113186d0ac2329b6eb3af2f3ab617c78695b0a89993b47416e634e0d3337a4bafe0aa14b9d5ee1a7ef8d4b37d362c73113b96950e3f270721394ebd651fcdb469272c6bafc94ac652e809090af23171fdae8f2ed3a0167b486d1dc4fcc6692ad7f7c5265c8c82107aea456d485653eef995a2f48e911ff6d31ee316683318ff957b8722a6a07caabb8452e535b4bf6e1f49c8ddd49e1fc04c841224e6d02e52a6a5082e4311e5d3e808321d7c0687d5feb9c6b61d78cd873e265fb62c217b1c0f5c0c9aa6a7fe95cf1182ddbbeb80bce2bf9350485de032f1862f25e0a10b1ba7b61c29ba2426e3c3e0fe3584581221219b18d448a9f9719ece64a721bd858cdfa43b9a52401371f45bdcb8f2f166a8839f82258d04913a02ada05ca0d8636f3f11f3b99f94c38035213723651c4b42dd9d9010950136cd235868a52423fb6e600fea1e9126bd1d185fc274b78e4f0048d67850df76f3eb35ded6cc9a777aabb163dc4f795d6427f01d81cb02ae1a7f26a182c87492bdf186775792e1c6c54ee22b0da9b3543ac11ab288aca57d71dde0a2a9a614b3b80ce6741832d327325f058d1f6d8f1bbeae51554397b1ad47f1b9adfecffd6a6c8b1ff56bed2ac377ab4466c51388edea412581af51259842eb7a49ffc8c0f20246855c17c11fc0741b2c6628ff0d38d158cd5f74eb37f57088679aa1db6522f2e4e5abd69ffb578e9652a3ec578dbdc2d04225071af0fd547a11cf01243e14e7ca4d2d29df9a89741ccd4ee6bba2b2b24f2f99eab30899ec0af002d97d549aed4fc303fb366097d05498ac8badeff8c4a2b00f5869a4a913348bd91518f2013c7081a24ae719be388023514383230212529ee50e1172b23ef141720c65d32dd17b1e250e650e8ce9ba5fc0c63c9e62bd2cea5b3ac4d91e49e68a78c00bd8da5b5c0a596ffdbc7321daf50d1e596f6f7a1af4ff8d133514a93ffd84bbf30da586f71b6f1a305e2ad81fe97ec44b4c8f8ad7656562b4437ea26130e76b53a498e4cd5018a817944e87d867016c96693dacbddad8414d75cf2e9364f543fd8d2cf91decef745bbb6658273d7fc8f4ed5b06daed17c942a6832d7d501959f9c04b34f0f691db333c7c0953c61e59b7cc3cbab6dbdffad5bb1b3666dc50af3f0992f5b3c54ecfdb6403a593c10c2c83918b8eb130c1498f9e82c901efb170c447e97a637124b67a273a35f2d8b7737769058330dc6e5b4dd87066cc2fa576d087c44c15003f41aee9e6216e13353bac0a96be06ac4558737159cfb757ffe15b4dd52fd07552f05ee8c47ca9f67497613295f773bbccde278c0b736ab17d6dfdc0534abff9cbbc278aafc05a93d9c4354061cd77149d3a2cde6899fec16c4748de0a71015ecd08547b08cd949c4e811ea7ef59ff8fe8b54d85061c688b10a7715a214a9331e31b2474b82e24108462d3193bcb5a6330773609035801c53c3fc65f49d616d05904e4061e3e71e4253cd2e7aa9c6a82a5f300cb8f57839db5e72aa9de733012e3a11a963f3662dcf54fac77dafbb3033a2a07d0e49c1d2e62e781b69460746d075144d71d291ba5dc090e721ab9bc88784fa7677ba447b1e9dbb18c50dfd06df63de5c75c9d240b066119834a036bbeeaf24a48c5f11160eca28046f7e6811a978bb90b51ae6853d3adc1541277efefcdbca4f80c08f8830b9d89626f16891606a3f7e5b48b96bc0500910fd2b5e994f7dd2ed9b9a101dca04fa76311ecebac12f238a9c822f9cf87a8d5bb9b376b6c8981d162c4ef580d5c5a69f9033b6458ffd671c0b6e11175a97a16e0d43c3f82bf0640391de81bb8dc7760789032d6c98d70d550d123318099778c45ea214b8c430d4862b88f7f594f78e16bcc77ec732acd874f5367ce850a5c5068569c5e18543116e9c4c2ab6810e2dcc970f8d8a28795e56e290bd98cf767c4dcbd7f5d9c264a07d8049a7934ffd5c949b70ba05e63bb8c1370df7a561b91a7ee3707aba058cbf9010dc36984aa456abc78fdd8ba7ec6565dee69b22d9d70441bd5b9174264171a4bd4539e19d497f5aade75e914a647e3ef3dfed1b00672f69ee5afe2e771548c784c80ab4c32d588554bf7c618d6a6c7150b27b447085c4a4e21288930f4867382798f8ae9a0e2e6badb6bbcbe6ce87aa5df7ee5cca4cd8cfff076f7213717627d4421a29ed3a73a7a2b84260b3ee680f009788be57d01b7d246174773f3ba5f4deacfe49dc7e25586c6eb700884978851305d1bbdea6e20c0c5cbf7d52878429d5bcbf2df3c8ba671a2e9de412378b5df07e8e32fcae40c1894cb5c0919bdaef8b62ad105ccbdb71eb2d45fa6911a502606767e9e61c2bd73e6119e564164770b7af47d204d364b8661671a9f417362284760905ec456bd45a82bf112d486973afa0b9825052f26e87c4a161ea3a8fe3764eff96a22d31a00648b0e51545daf5f9375a0cb8bb7ff576eb60dd915672be915708bb1ad5c58d258a7b6a10b20ef8d061c9890f998a34224a23320bcbd91d520e1e35e877246f922cb5b7a7b01e076aed801e16a2e3ffc16799cfdd52efd1708dadda79f64a71d2015192dd86db04a910b453c251464d9cf21b35a663c541760e48f7c36ad9df0ce2248098a55fa5d40886a7808445733fc2a24e7bb9a38f97e6d319c49436c8abdd26c9d4773b1c3c71391bf973b6c9c4b7b84e979ef0e701be7bb6a8d4903a13ffe5092b3d97d18a575dfce07433e89ebd284b913d8a3da634989777c9d9e9222bf8f7ec0685d26fae2c8b141a1102e3e70ce78a8c9e4b046c3888f8cda0be467d9e64c58bb80f2c1de14f94ffc2cc10c14e9621cd071103f0ddbcc5d3396266f0a6666a51e7829ac8ef535f71808c1c031522577618edde6b84a36013da478fb3bf49747c6f96628cf0bb7f67d2d157f0bdff1c25ef11e758088085460bd259bf9510e4251a74997a427107d27c9e314e62dffc4af72cb7245424d987f5285f25852b7e0d9bedda6ebce305f2d58695c7ad0a4e204fbc9cc26550f35854447aae35b5c0f1e177d1b10fc153383bd980ee3dd9b73d873bb4c53091eb15f0da2b392ef8893c92cf9400085734ce2dfca8cb006d52a3c2aad65b133ba2c38040445e3a7bd316665ffa65628b5f3231f317bf100a2e78637551fde1283955db9b4f99a89e82647c29aeb17c9553d43e8cec8b7707756a8d18769406c86cbfd7002d29a6b2ad693dbec14ac2e18f2a8b9f79d8999b7da1736bf8a4cedc98ca46da0fdb14436bc0eac78d98eed5f65382610c3114aa840360e5e4622292e8b008d81a08d6d344f71be8484164c13b053b82beb99d276756e4abcca2365d46cd5fa229acb973920b43c78e81ad63bd63bc1873835890f6572aeefbf8a4a55b2a6267b34b7e54bb6c28b9aa1ce07bf3d65715ac147e1208b0c351057f8b89b89daa0edad2811b5f9341304c6918f3e331628dcc476fd45b4f7e09dedcf8cbc10dad39decd4b9913b24896b35c0293c0e836c003e7acb53576a5fd46ce7f271f96fbddd13e88e5826a94a0e78b18da9bef1fa05208e8403d734c7ee82a682569e40e518bd195a2450d3c1870d390e73ca0a775bd567538ef37a6e4f359e13aab6913adcb71cf86a10373e21a252fe3f7aacd2ac21cc39ed0090cef33c620e6a29611c8dfaa95da353c138d02c6b2b692aa7c189a689ff7a04b091ed925fe29947568a172641f07784ed87f73bcf595cec65a7ba53fcf11eaaaf9223312250e7798aa4bcb32cccc0d65ed8d7aecb3230d2dfbba58704b9b7aab7e0f11b39c66c1ffa8b1d54125623822245dcc48f0935b343cdc5d3db17d6557bff954a18ef17ad95ac2b35272ede2f73d59789bc0fdbd979443008bd89ab9626ee55819acf5ec152db16f389d6da716ee77af568fd2605b6f7bcb0f183f2209a64965181d04f08cca4ada8000717dd043e07ef0819df397e0b71d8c3fe84607b81273830f32abbde0ecd4f7d1484e5697a04a55e4416ddc5d2b6ddc7cfefe0579c5e0fb4d6938d3451cc36abb46034c33bba0b05b74bae022fd5456b20b45c3558921098f1e7669aaaa42411a4c60de0aca689c078e542015e17a0cff9da8ecbad12341998d6014a16957b9833ad1d47186ba21e81b61fafab77ce0dd51d06e4bd2f09d7e9cd3150615c22e4490929594c7517574d86bfd81666a72698cb91ccdf0ff02a53761bbd6668817b14389a81e4d7a02054b5436f1cd450be369450de638511c401b281ffe478e7fe09407e11c19013994a0cc442bd9c5ed4aa51d6a67f4f73bdf47700a694a4e4c2a78d3643af3b27d0b0036531a969149555cc0fbda22bd76bc43aaa0d1be846925529a8f9e6b6e7617cf1ae17de3d381ad06bff454de6ec97c04d868b92e69f5c2ff6893a56050f8d6e95857739725abaaf8ba50cb1be509d5c558c932aecfeaf9f71881dbc65db1f0cbbe1ddf6800b8790a8407c3fe244ad6b2f767cee1534993a1a01ccfd4f6522490382e3e64861b585443ddc3a54dda078ab273c2d96212ba138ee3fb4d99a2541146502ea07d6226e4dc9bb36ded4f9f094ed39ff4cb8a7ae1da929b41adf59774febb367ba657289bee82ca52609f117de4ff82bd0012d8f0ce339b612505404e4923da56b8da1a5a3f86f02dcc9e9f569f74f5001aeb5082c841c8333ce8cf3b7cade6c687ffca90cf925e8f94406f86d99015cde904373753fd5553bd7e747ada3fe3d24a5d03deb50974f7841b6c03e44793ed1c70ee541cae6c0334fe9cdc5f47e4853d8135e4090fdd0a796dfcc67622a14d18251d28c9fe30490c67a6c95d38804f3a0fd23fffd0934f496ce49c899f0ab35fd101c8611ca80d53088c448f55933bbecf4892a619e1afd044bb5c637d4b02ce41615ba077986456a84ec26bd471172f151dffd7e46d1c5628c1ca7af1fa71e298af87c3e6661c09f4ddf32a63b51900ca2723cd9463bf824683f8899f258e342992f9706009857348bb7277deb7fe9ddd63a85f1a068bfea4a2146450399c85fc6aadf0d34d42a341770b5420db5f738377099f9632c735e21f30f652146fdd39435439ede0d8919a8cc4bccb5d5ad9cc6d7c453936a66ffd999c9ad98772512bf20bc0d123763019bb38480f2058db66160bbf84a2633f14460ce7c99232d168f9084943028f88846e331990b933976d81de24a420eec0c8ab51692ef705b960626dcf9e3c02c5613cff7d0683de340dd7c0bdb5fa17d7d00d64ad4884fd3080cfb1254b7932a8a62d14b3d71570ae793a1bab6b927e6d2c6ea78b9e834101290c3581b2aacbce47f480e85959fb295ba3338e86e48a66e0a7d55bf8450863946cc7409c695a11a7d6bb26c803aba98c7dd6d73405565f7bd36de63ab71a1158f0f28c5a679f2e53b5e86492f1b7feace14649a3413a91434ac5dff314a6e9ee65519b3bd7dfbdcd561dec2dcebac705d532d6043f4078a31770c43f885e6db1bd3cb0e09b5bacb04ce3c07430404c6c853191b1feef14d0705aad3d103b432be9de4d87b7df4c0e4fc2bace901a329cf8c99ba7d296d0f80a48c32f5ea337cea5d5db79f7dd6c354285904d004262bc3e17774395c11e3165214610f49f4e2362f46e29b82f1573ad6dac92cec27f6664d8c00256f3a0a46ca33755242d95cca10419dcb59fe514f5cbe00bedbe50d4690c061402f438b2e37d20f30db9cc2a24045037943892f225362bee3303d8ac2612e0224c399ecd03393971cbd2ec0ae81e4d70995cffae3d3e425751e72f2e58c7d6f977bec8f01e2fda5f04d350ad33a42dafbf4a2e6f367429940d1571111133e6fffa5a2640c6e0bd11bb02e459ff4592e089b38833168f4f7b3d263bd1591c56b66c9aff4ec4b033f910b63cb61a7505def3a2308cdbc47b899d84bfbb358874804fedc16b3f4615ce3d6e5376f031b77b8064315cbcc7132189376fa44beb0f122066db05d2dd5f18c0526d54c8ffe89abac6dad96aad316769cf06642e2278108df8445b8094363ec59f2a796eae1bc292de770fd88634f188bc9b17aac5a83aca766790655ff9d710a61eb24138aa4217c75574b26184a3d142c7a4ebe1b94b4e6c09a056d27fafeb6483a75d4b5e5a54f4dfcce1b7104ee1794c2726948ae0ee07886d55c9dcc59852103c64d97a81c44506bd700789335a2e2ef3e1c22b1239262ad545926d6e9d71a9ddd851d04f590c01fcfceda8c1bc658f622fd67a9737e82e5ca1fcc906964e7e2cc3e577bd569bedb537284324b00f621efd6319461885e57b51bbb8902f8772240dd1c44c5f0cbb18892b73e388047428a8c736f6bbf90749cd80069b7ff6e82de0fcccaa6ecc1627e893518f580cbef3865ab0e789cf964b3417ea41a3adfaef437ca92fefd907941e3a63c758f73c23420a56ed5962d782579bb59294bf8b41ed863f9f1837acaa16f6adf91973635dcab97c400435f9bb96f872784220652998590b727b63dfb60d02654d716bcae87f1d4eb44df5994c70180c357c7746ee2b4071407fd41b7d3936d5ca84e9277a486aee7d75fdf8ea3a90fa97ed275953f832fac04acc184f0c7080a072751dcff0b8741c88f8d90536355e7394a87078807c4714f337976c9ae3531beec57dd6f49adfee7c1e8b0ce5118847f700bd96c32a12d99147f41cf07b4fc5a6a1988458f3d0bea6854d82f8473c2fe66d5e736e3ba8bfaa442d1dd81cfc44c1bbc8424937b239446e1bdbd81c8d624594c3d8698c39a48aba5b720fb0a088c662683078b8fcf81db14546da3409a035ac6e2c55f985d6518abf93496abc3fc90364d62cfc985f06f33c7f88750e6d4b86c72c5db3533606de0e6368c760db474884944b106a996bbfbf604b44412aed9ce439969be0e193c50571d3a40994f1188ff0b4d37b3cb7e76480dd320de671a39c69b2f2ad0545cb72aa4bbf34ccd9b4cc4435b27d482c546c6f228b206c05f51d7a1b4e12c91068c4bbbc478440ede0cf960c0b5c351b7ca5ed3577a8ec6dff01e1af6f1ba43383dbfc136e45e37526f49f59ef3c4bffbb1d3aae5deaed364f7f70d528432acaa882496fa108f89476cf8d4ae9d2dfa7d8a1ce19a223929340e78b27c0f508d4322353031b403d71a8b3c13c82d351296f36ad2dc840d00f388775013c045c05d9c9ce714d1792a5aad517f38bf041d059d38c1450063b36b23045d2f8a7072b1d1b2512d905667a0a7a4e860e9bdd069d2a437b530904894238c810f5405a727253de9bae0c9a2229bf2643ed8839446a475c0c88379e537c597c76f372937363927a778a2c2759d50166222f32b13a3e8708a3be3777ec3fde659e4025f8ab0c0a7a7287d992d7cfde9c986a0360bea9b535d4c87c00b833cefad77e4cdc0936f9de230b422dd59479494b9eec91a12c6d168d0e06330bce79edd153af8717180b29ab2efe5c63541f70284944cc23a3adb87ecd159da104ee500a91fdc6173f453bb16dbd11571016dc2507af7127603e08648c62373e2f3e76eb4e5c64991e8b26287d8de672a7bce069d2faabe2525bc216ae7cfeff031d44529b4a9a86fd76aca91095c8f7fef47a7c8531eb7647f8f3429f3b4bfb3de3e3dac0b22598610f3af31cdbcf67f273b0800cee5e0bb8b82e12a44f41479056151fc9c4dac303fe91c7c9c801a1b85386790f527886afe31af085f778ad21025e197666399049a2efcf04997fc071d3297609d990b76b6d56bfb4b1c62ebc097538784c9625c31a88dadd5d6e19472483ce52ba03c36eb7d71130f1b3d071fd2c3cf9a3315d13d7b9d5c2dae0e7d713ae9f4e9bdcdb84882db5cb9b035280ce3bbe3b125535e85e69ff020e037d719bfb5b67c71843bc2c7ab35a5a2b1059f2c64b41abe2f5035d5277aa6fd85e33ce9765289a5b20b6593983126ac436f2189208adfdc553649bca631fa61174ce91682e257bf27327cc904fcca32808de8a1c3b718d061e999afc0e82ddadf3aefe1f66ae12dc94ce0e3d0234eceb08ef6775ed8568f337d5872a7b2a36f4eb1ca849a0100a9434979012e1cd05feb3d2fd267f20177e95a2d5f6f3f6ec71832770896cb5536cd6ba8d1e43d90823c2f839e41fb6634c020b490804cb4ed4f0eee24c62c0b290016c202711117bb1eb72c49a7640e52d6755e92e613d574b89d1d8205b6faade70e41b7a770d39c71fc53cb1eec54647e9e6fffbb58e5e73d3301d67a6c29bd1ffea1d32317c03c6364c6c7279a843d14f3d9a4f86f5872fc08aa33e6438d34c0f6219eb617edd7ba6d7209feb15afb2742cdf0468826fcd18566241dc4d792068001d1a9878bc4815631e9bfa2bec9231b8637dfe0ddefb391fbab023eae3b5675ca2ff8871ba1cdd3225ea6ec212abfb20f436bb901a5f93c4cfd147e7314b4692979dd8f82836f70961fae5ebaa9092aa4439237696fcfda84d79abb10c8dc58d9518952f41e8af670b4b491fdaebcde6f4803a1fa96f1535a9baf00d156f04bb395cad530d956546040215269b7693fffde7f0d9121d693ef93daac8b96cdd4b6fd9b458b6056d8b30f296c1a83b2713d4eb7f118cf938f3efb2bbc855feb3563cbeaf67548c2fdca555e0f258c0951972f7108feb1c0e5bcf3ac533ab073f0714ac8078a958a1beb6e037086a305fe61befad3c5ec553ba85c0ee86f18b36fc5994d00485c14ee792217cefa3af08c76a1d1ca67b3ab9b15e7a03c2442f4e5d3316d85838ef542be606f1cecdd8b8c4af1aa9f8491850abc98a12081e3362545a784926545151ab56d87e44ad84afe15dfabc7f0a9d0488728f2061dd1db85e3b9406c69f9eda87c488eb39b72a26608aa49a73dd3597ad8671f95bfc6fbadc23f7b4270ab15f7daa964059014c458ce5b586e448f9b20d90a41220bacf0e2311dfb4f5d8c6f06665785ec1464e0eb34163d0a1c93a2ddd149da7ea2e7ff6b43117c487344ff271d70e691f15580afc5e4189fd3b447b1228071692825a2db54183088c40d68fd3f6467aaa60135c283675ead8c4322a79de114fe2e6da157b6193fce7037e8a8f6c748535cdda7135f70f232e7858f16b4f38e318c0a29926fa9c9a206db2872524d7224793946ce9adb90b6088f879f8694b3ec51adc3bd1b010988774f0ef704bb49fc2ba925f4258c2fab8f46da8b4ec3225f8651585cdfcf57379c7200023246dbb0cf30fd61bdc39a1e4c1d8be9537e872ceee1e87c95f12155590ba67bc98f5330b06f78fae13de87cf869d752e4ef27e71a547dfdc29beaeae1a3f0313087590bdb14d7a525d34564bf1d56e3de010296a4e0cdca4cbd793118978a138285dbd81d5fc65ea356c366ef749849b2cc81b7e8f1a1344590b959793a08a7f153e2db10916592b9c315d1baaa9158810a00e33173d5ecc02ebcda0dd31bd5b6b74d3f81d0eeeea66e0a488e03b727a42273ddb338031aef4a77677bba83496c12f2b3cd956bc0b1d0a2b853d7c0d5760e90bce4ed39c80962d31b5b929b62fd8a153a8f67ac356c05d4cf74cc7aa7531393b914ef18fb9d729c7807942553ad56922c8a76eddefea199cefb381d15e9d272fff3b426d0931b492d9d41604a49c29b640a7a6e336e4090b5f6de0663146abfe513e684ce9275c04dc21d848cc06cd372bf554293dd7e63db84b1ec875a328d76edb69abb5e664fbf5e9cc5d33c5cb4ae095756d6648654a7046202628a921b8b9f18fd888e1ea93411f56c62f326c221dcbd4a6f9f9dff0dd9046ae1a24275ee88117396b0a512735e19a107b006f61558225f09f2fd38c97da0b0fd1f8125e027713c220012b68d8d8d2ad4a89ac4652333e7d8fef7da5b2bc37ba5d9dd7c2ae96060cfd8f26976b5ccc4f039dda946be2abfcd2f58005f5e7e3a29541278339830bf524e9bd454f75d75717eab76e096cbf2787c8fa573fd86aada473b982e26b4194d78b85390aa23aa7f536c06fc394a82c1ac33d141ad24d0e6defdbeed11ce27893467d907f4f5d51b1e5e66db9e39daaa5ac2115f849c98c35ff2cc69c417b2225334b5f05d84c42ece25e34cb7db18487ef8749bccea862951b389a38ff1c3fcc795ebbda2baddcbf1ddd2dbfb1803eeb6769ba1ade94851522b0ddc764abb1cfb7a88e0a1d9359b690b4e51035fb6a979f619c180b50d7f08c29dab0625ecabb76c2e416107c43382fb59434fedcfef88c389960225d6eda12a52bd56d4782d69b8415385346b6d09ccb89cbc4f032a92fec424215725460a4ac0eaba94077ffbdc320e327a53f0e0a1420a14771f55b058e46258be851993e2892a28a9d6e1c2e3f7112e70d016ed39ef65b39274cb1e2b60a7687b09107df428ebd973028c248f4f3cd43897ce70e4383e44cdf3939f19374dd46fad382eb2177bbaa735681ce73a18f3b9e03629e21f56e0a1e6a0d3ed03a1287aaaadf14125e700eebbab63c81611dd3d24dfebed27841dfe35323d684bd28bb91de236a1b2e6b28fd6a65486c45dbf227618ce259dcd31c8de988b6f560da29e509fcde6723c079e1b150fb9a5686e569839dbbd60a6f25cfc51321c1332b3637a4ed", 0x2000, &(0x7f0000004a40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000400)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) ioctl$sock_SIOCETHTOOL(r2, 0x80086601, 0x0) 12:52:06 executing program 2: clone(0x3a3dd4008400af01, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = memfd_create(&(0x7f0000000040)='\x00\x00\x00\x00\x00\x00z\x9b\xb6\xe8t%\xfc\x02\x00\x00\x009\xa0\x8b\x14d\xa2\xa1\xa8!\xe8\xd1\xa0\x8a\xce0\x1c\xb7\xf1\xccm\xce\xd4\xdb\x89\xe5\x8f\xe2\xb6\xd6\x9cF\xbd\xff\x14\xec\xd4D\x8a\x1f\x1b\xf6\x18\xf3\xdc\x91\'\x06\\8\r\xfc\xeeG\xbeQ\xee\xf0\x99\x1e|C\xd8\x01\xd0\xf5\xbb}\xeb\x86P=\xe51\x9d,\xb7\xe6_M\xbe\x19\xea#\xff[\xd1\xc3\x9a\xa3\x1b\xf9\xe9\x1d \xce1\xc9\x9f\xb0\x14\xc2\xeb\xf9\xceE\xad\xa4\x92\f\xef\x87g\xb6\xabW\xac\rP\xf42\xb7\xc8\xaajnW\n\r\x802\xd7\x1b$\x95tO*\xf4\xae\xb8\xb8m\xbf\r\xd5\xbf*\xfd\xc7\x85\x1b\x8b\xe5\x97j`c\xe0\x88?\xda\x8a#t>r\xae\xe8\xc9)', 0x0) write$binfmt_elf64(r0, &(0x7f0000000340)=ANY=[@ANYBLOB="7f454c460200eeff0700004000c4a4f103003e0000399d9460c40a09000000000000b12ce1df66ea000014b6d341bf65bdfd74dafc2838"], 0x3c) execveat(r0, &(0x7f0000000100)='\x00', 0x0, 0x0, 0x1100) 12:52:06 executing program 3: syz_emit_ethernet(0x5e, &(0x7f00000004c0)={@random="676e59748f7c", @multicast, @void, {@ipv6={0x86dd, @tipc_packet={0x0, 0x6, "b3ce53", 0x28, 0x4, 0x0, @private1, @mcast2, {[], @payload_named={{{{{0x28, 0x0, 0x0, 0x0, 0x0, 0xa}}}}}}}}}}, 0x0) 12:52:06 executing program 2: clone(0x3a3dd4008400af01, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = memfd_create(&(0x7f0000000040)='\x00\x00\x00\x00\x00\x00z\x9b\xb6\xe8t%\xfc\x02\x00\x00\x009\xa0\x8b\x14d\xa2\xa1\xa8!\xe8\xd1\xa0\x8a\xce0\x1c\xb7\xf1\xccm\xce\xd4\xdb\x89\xe5\x8f\xe2\xb6\xd6\x9cF\xbd\xff\x14\xec\xd4D\x8a\x1f\x1b\xf6\x18\xf3\xdc\x91\'\x06\\8\r\xfc\xeeG\xbeQ\xee\xf0\x99\x1e|C\xd8\x01\xd0\xf5\xbb}\xeb\x86P=\xe51\x9d,\xb7\xe6_M\xbe\x19\xea#\xff[\xd1\xc3\x9a\xa3\x1b\xf9\xe9\x1d \xce1\xc9\x9f\xb0\x14\xc2\xeb\xf9\xceE\xad\xa4\x92\f\xef\x87g\xb6\xabW\xac\rP\xf42\xb7\xc8\xaajnW\n\r\x802\xd7\x1b$\x95tO*\xf4\xae\xb8\xb8m\xbf\r\xd5\xbf*\xfd\xc7\x85\x1b\x8b\xe5\x97j`c\xe0\x88?\xda\x8a#t>r\xae\xe8\xc9)', 0x0) write$binfmt_elf64(r0, &(0x7f0000000340)=ANY=[@ANYBLOB="7f454c460200eeff0700004000c4a4f103003e0000399d9460c40a09000000000000b12ce1df66ea000014b6d341bf65bdfd74dafc2838"], 0x3c) execveat(r0, &(0x7f0000000100)='\x00', 0x0, 0x0, 0x1100) 12:52:06 executing program 4: r0 = socket(0x2, 0x80805, 0x0) sendmmsg$inet_sctp(r0, &(0x7f0000001a40)=[{&(0x7f0000000000)=@in={0x2, 0x0, @initdev={0xac, 0x1e, 0x0, 0x0}}, 0x10, &(0x7f0000000300)=[{&(0x7f0000000240)="12", 0x1}], 0x1}], 0x1, 0x0) r1 = socket$inet(0x2, 0x80001, 0x84) getsockopt$inet_sctp_SCTP_MAX_BURST(r1, 0x84, 0x14, &(0x7f0000000000)=@assoc_value={0x0}, &(0x7f0000000040)=0x8) setsockopt$inet_sctp_SCTP_DELAYED_SACK(r0, 0x84, 0x10, &(0x7f0000000200)=@sack_info={r2, 0x2, 0x2}, 0xc) [ 674.482691][ T5052] VFS: could not find a valid V7 on loop0. 12:52:06 executing program 1: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r0, &(0x7f00000000c0)=ANY=[], 0x208e24b) socketpair$tipc(0x1e, 0x2, 0x0, &(0x7f0000000040)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r1, 0x8912, 0x400308) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r0, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cgroup.controllers\x00', 0xb00000000065808, 0x0) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$ethtool(&(0x7f0000000540), 0xffffffffffffffff) sendmsg$ETHTOOL_MSG_COALESCE_SET(0xffffffffffffffff, &(0x7f0000000640)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000000)={0x34, r4, 0x401, 0x0, 0x0, {}, [@ETHTOOL_A_COALESCE_HEADER={0x18, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'netdevsim0\x00'}]}, @ETHTOOL_A_COALESCE_PKT_RATE_LOW={0x8}]}, 0x34}}, 0x0) sendfile(r3, r2, 0x0, 0xffffffff) 12:52:06 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$v7(&(0x7f0000000240), &(0x7f0000000280)='./file0\x00', 0x0, 0x0, &(0x7f0000001540), 0x0, &(0x7f00000015c0)) 12:52:06 executing program 2: pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) openat$procfs(0xffffffffffffff9c, &(0x7f00000000c0)='/proc/timer_list\x00', 0x0, 0x0) perf_event_open$cgroup(&(0x7f0000000340)={0x3, 0x80, 0x3, 0xa1, 0x20, 0x3, 0x0, 0x100, 0x40, 0x4, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x9, 0x0, @perf_bp={&(0x7f0000000280), 0x4}, 0x844a0, 0x0, 0x0, 0x6, 0x0, 0x0, 0xfff, 0x0, 0x200}, 0xffffffffffffffff, 0x4, 0xffffffffffffffff, 0x0) io_submit(0x0, 0x4, &(0x7f0000005e00)=[&(0x7f0000000700)={0x0, 0x0, 0x0, 0x0, 0x4, r0, 0x0, 0x0, 0x0, 0x0, 0x2}, &(0x7f0000000ac0)={0x0, 0x0, 0x0, 0x7, 0xfd9, r1, &(0x7f0000001c80)}, &(0x7f0000001d40)={0x0, 0x0, 0x0, 0x5, 0x0, r1, &(0x7f0000004c40)="da9e0ad49e0fc4291ce1e10c1f6eabe8cf1043290ceb25d5a420a54137e42782e49b76f563c757bad9b1d2d8a9e5080d70b5301932f37831f3f2ce0f5fb839189fee583df04fd16d3b0a26e2eb5cf5de4003fb1be5b9953912e401b3b29aa26cb20bcebce0e1ec9a6d449dd4f3dab5603e0d2bb970efbb317b8c21680d4ab02ed5da56a86e2bbd64a21a55249724ad9780a3cb6fb8a4f84db9a34669db66d5e267b4ec880247eae5fa6dc511933d0f6be7e55749933a3e011ab102cd3823a2cfcf4a5784cd06947d2867a77039cd410e66adc8621723775451f75c2dff9647a83e90298b7df449d4ebc1447d9f6657999f939637de139f0b3719dee3457c95f24749c1f6cfa001011b5033d838ea3b314ce44efffd80aa568a023dc8ec1b37a2f4ad68b9c4df1b47779fb5f3e4277f041462c3bdb9d843e8345c1620969016e4f8d8c0ee8604dd8018a5ffca5be3f39446afca403c3c28877194fe671dbf44faded797b01d02b5a7ce125a8b2ddab8ece932a3b3aef0b3497f1c62be4d4c8fdaaf92e6c63e9b9aeabb6fcb7c2bef7fe99ce2bdb3bc5de9d158907c675437504f9c26cc6fb9588001f0622c2d28207e5d657110edd555dbadf5c739055d935cfb6f26738115969bce8c751da95f22fb5770d3b5f228e6d95984359078d14b012348c5d79ffe544df79d659bd38ec1e40209b9a4676d7db40c9b76b52a3907dcf0d996637dc60ae89a070e357414dc50db463f0b17fb04bec4612ba36cf1a26096b856353974b75024e2e14d5cf95dd3d9070a0a1eafc166238e6e4104d84158675b69c6273748eb57271d250a0c16ba666822b1e5e02a91bb17fdf921f37d74cd33508369500066456952a11ed6c9a7140a2101a39b43d85ac873549270545d9c886028067b05aa8cfa52f40ba4565aff8fdfab19bab7cc8ddc897e2a3564071fd8f51fae028dca24db7e7268c44a1591539841b1294f9292e5f215dec8ca8d3168332df0cec1ef49f2939b2de013f49a089bdfe471d0c8175aaede2af31050d031c67b231ee54a7c74da59289d7ee381c613348f43f6a1069be3ce773a63a44cb7f641a6ae5863af79608848674973c4d531dff6b7050c034c0adb6d97b6ac1f269dc4d81d9081e62c089cdc3a33b1c64380b94d5ceb0ba21c3e0e4df34005126930958713f99652e4d3ece16a2fdaf8fbf2a1a53ad654227005006a86a10802af2a188085e12bad0c4bd6320b2eaec0b2824f81e9fa57f048a71b8e390e6b9cc272dac583b78a50f97d6638baef5971ff4b1de1debfeedfe910728b9bba3a52d850ce321d9738e532dc54d90d28f94dcea2355cea2b153cb9dae690270844f368eb485fb4dff660a5407e43b980b676630ce7dce0820a6f655451e97a6feda32cef611e7f0bbb8386252a091a73f9ecb2ef7a388107b6a30cf041ae60edce7fa79283ede8c3f79269c811f697b8c109bdc7e316fb8a055876b366e6dcc344e2eb48b2f48d53d3997969b33b90920e1cf3db90ecbff7e9061cbd806d283b56f98b1b20b7a1aae3a907b7119c0ed7430ecb0e970304c80531c89afe25e94720b48f5e6f67b022705b31a67a1547d67d4f41ba41148443a68dd9afb8c7d56bc46717e7bbc4383a1e39d2950414eb0de772a6cc918a87eadb18be3b823f7a1357b5dbc672542aca1615fc0e1a7fa15620a3748935ae5cae5250e22cfd475781f62c9e520c855c50707e8e5af8bc59cf1d4f156a8fe4a28d39bfd4f9d3ee97161d3fd68b1262e28b0f04c15a5ff53fd46e7c83d8081cd64b99980d0550606e2292d1e1d29d7dc54c2c92227f5906f8757e2218e944ac3d7a56dd857fa7d9c025e9293debb7b2d8ebd3f7eb12e046f9d05e4c7ecb2d24c5556a2d475794a74be0623fe36ffeafd20a745de075e51eec0bbc1c0dbfab64ae43b07f8cd52e4b00b324fa040db4465c68777f9251e3656e5c0bf5e56e55276dbc26bc660d1411ccf3f6a3ed06935fa4052ad395758cf2fa863208e8d03417b044dc3b77e0e2f755f01f51a33c53a5831d3cbfecab1dec6f540b52a77c6bad2b7eed861bfd79a121aa59d0cd8d09bb90885c5e9cb95f09750642a8aeeed3f580b441b925a9e831cbc56cdfc1ef2f129c2cdd323c3b328dddf0881c8af46df121d06af81533e5fbb07a2747cc510b25b30e30cc7461de5d8867706174172e88a9da88e66c080f800f3c69e70d6048f98b33dbfc1e03c2605a779b4d3624c79734e25a394c3dfc5bb5e6748b3ce0e9ac2f81d9f1527261af1a45cd152f5ea77fb789ad814e2223450bbb8b64af90ad9428a6d619479ecbc604c1bde2c1e824b0d161c0ee32f837bf29b33ff73e9763e27a40569f261948a4a4da10e97e7df252578e0c469016e3b42e5180be230888d5c294ede4f2897df1cf99feeb5f3b40586d894f055aead006348f099ab117e41bcf9bda1e2d9512c1779ff99b8b0fa28dff3715350e54803475396d598f69b30c2f9fed134e2abed33fb23812ab537ab6fc77459c6ebe7baca135a563e3fd4897bb37e6670730b38751d11e9cd0020067d4065e13f872a836df7f940eb3809c8bd91a59164065c569502c8b7f519c45eb86c5f2aff5f1f2597777b672d84886a92344e71b93ab333c2f2463f86444fcbff7c919e6f6a2d2cfd1ad17afe7ccdb6dcbe41ccf00a8281cbb8adda34df43dea0f7e835b99ee788ceceeebfacd789afc9ca559ac00133f319088ffbec26bbc2937e56e9ef7bac19385061af4597d2dc45ccbebecbc7634cfbfeb6e8d7ecf6c361972137ab921d57ea5f39403f813829cc0e408e1563d503f634085ee09063e51d8f658402b41a7deb56d43e6", 0x7e0, 0x8, 0x0, 0x7}, 0x0]) setsockopt$SO_ATTACH_FILTER(0xffffffffffffffff, 0x1, 0x1a, 0x0, 0x0) r2 = socket$inet_udp(0x2, 0x2, 0x0) close(r2) socket$inet_icmp_raw(0x2, 0x3, 0x1) write$binfmt_misc(r1, &(0x7f0000000140)=ANY=[], 0x4240a2a0) perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50a, 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, 0x4, 0x0, @perf_bp={0x0}}, 0x0, 0xfbffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_MODIFY_ATTRIBUTES(0xffffffffffffffff, 0x4008240b, &(0x7f0000000100)={0x0, 0x80, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3ff, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x401, 0x0, @perf_config_ext, 0x10800, 0x0, 0xff, 0x0, 0x0, 0x2, 0x0, 0x0, 0x7, 0x0, 0x5}) bind$inet(r2, &(0x7f00000001c0)={0x2, 0x0, @local}, 0x10) connect$inet(r2, &(0x7f0000000040)={0x2, 0x0, @multicast2}, 0x10) splice(r0, 0x0, r2, 0x0, 0x2ffff, 0x0) recvmmsg$unix(0xffffffffffffffff, &(0x7f0000004a40)=[{{&(0x7f0000000280), 0x6e, &(0x7f0000000540)=[{&(0x7f0000000400)=""/95, 0x5f}, {0x0}], 0x2, 0x0, 0x18}}, {{&(0x7f00000005c0), 0x6e, 0x0, 0x0, &(0x7f0000000ac0)}}, {{0x0, 0x0, &(0x7f0000001d80)=[{0x0}, {&(0x7f0000001c40)=""/2, 0x2}], 0x2}}, {{&(0x7f0000002f00)=@abs, 0x6e, 0x0}}, {{&(0x7f0000003180)=@abs, 0x6e, &(0x7f0000003280)=[{0x0}], 0x1}}, {{&(0x7f00000032c0), 0x6e, 0x0}}], 0x6, 0x40001042, 0x0) perf_event_open(&(0x7f0000000200)={0x0, 0x80, 0x0, 0xa0, 0x1f, 0x35, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x2, @perf_bp={&(0x7f0000000180)}, 0x0, 0xff, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xafa, 0x0, 0x401}, 0x0, 0x0, 0xffffffffffffffff, 0x9) 12:52:06 executing program 3: syz_emit_ethernet(0x5e, &(0x7f00000004c0)={@random="676e59748f7c", @multicast, @void, {@ipv6={0x86dd, @tipc_packet={0x0, 0x6, "b3ce53", 0x28, 0x4, 0x0, @private1, @mcast2, {[], @payload_named={{{{{0x28, 0x0, 0x0, 0x0, 0x0, 0xa}}}}}}}}}}, 0x0) [ 674.605194][ T5076] VFS: could not find a valid V7 on loop0. 12:52:07 executing program 4: r0 = socket(0x2, 0x80805, 0x0) sendmmsg$inet_sctp(r0, &(0x7f0000001a40)=[{&(0x7f0000000000)=@in={0x2, 0x0, @initdev={0xac, 0x1e, 0x0, 0x0}}, 0x10, &(0x7f0000000300)=[{&(0x7f0000000240)="12", 0x1}], 0x1}], 0x1, 0x0) r1 = socket$inet(0x2, 0x80001, 0x84) getsockopt$inet_sctp_SCTP_MAX_BURST(r1, 0x84, 0x14, &(0x7f0000000000)=@assoc_value={0x0}, &(0x7f0000000040)=0x8) setsockopt$inet_sctp_SCTP_DELAYED_SACK(r0, 0x84, 0x10, &(0x7f0000000200)=@sack_info={r2, 0x2, 0x2}, 0xc) 12:52:07 executing program 0: openat$sysctl(0xffffffffffffff9c, &(0x7f0000000040)='/proc/sys/net/ipv4/tcp_syncookies\x00', 0x1, 0x0) openat$sysctl(0xffffffffffffff9c, &(0x7f0000000100)='/proc/sys/net/ipv4/tcp_syncookies\x00', 0x1, 0x0) r0 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000000080)='fd/4\x00') read$ptp(r0, 0x0, 0x0) 12:52:07 executing program 3: syz_emit_ethernet(0x5e, &(0x7f00000004c0)={@random="676e59748f7c", @multicast, @void, {@ipv6={0x86dd, @tipc_packet={0x0, 0x6, "b3ce53", 0x28, 0x4, 0x0, @private1, @mcast2, {[], @payload_named={{{{{0x28, 0x0, 0x0, 0x0, 0x0, 0xa}}}}}}}}}}, 0x0) [ 674.730836][ T36] audit: type=1804 audit(1630587127.113:256): pid=5082 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/529/cgroup.controllers" dev="sda1" ino=15009 res=1 errno=0 12:52:07 executing program 5: openat(0xffffffffffffff9c, &(0x7f000000c380)='./file0\x00', 0x40, 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000100)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000100000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000103c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000000040)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000e3c0)="000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba045abcd5dfc67d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000209bfd66eea210560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001354c4b600", 0x2000, &(0x7f00000062c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006340)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) r2 = openat(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x1c1401, 0x0) syz_fuse_handle_req(r0, &(0x7f0000002140)="d23d5663422096c70d65f08cdbf2314bf6bb40a9cacb2aad6349ea9ea6e7cff01ca62558676c93a258ab27eb5f462d1e8ba7015a3deee2ffe25fe6775ea395c2c1b92044d5c571dcfae5eae8af17d4cf05e68d37c0b13d326813f143873cb8c16805b63ed358e78ac9b6efc8101d083ffa99dced434133fa34bf2865b1e2b71325bd359fa62d4b01bbe862c9a5bdabe4b2ee29fd44d897ea6ffd89804b24093639638683187882addfb562eaf3a723b5e71aa58b94b67bd40771243806ffee7b10e1b753437de8cbc2d50dc6450247e2f02d4b2f91044f94ff4ab56878872347c63444d26619b34b2df31a993640b18e802d4465f513c73683f766d5986bf496a6b3272cfc91b97c708240c4dd727bc3b5752ba6b095a30358674c212c8359533cc3a0412154f8f3ff37b2140686787ab49cf6ae3275ab7a4edf8af266ff97ea4f134531d43e8399eb39e5f22941e8b6602aa8be87b74cb66ba58d4fe6d91d3055a8c2a1ddb6271bb21bc8607f06b1e215d113001fe98682f17dcc1a1d95e7f1d1009cf07673eecad819dbd57779b6e08f70b2fdbb10a50ee843917d881edbf66804750df08d97fc060b6c541ecfeae87fc288de6113e89360a193f32847d513463c72a907f8beeb3917c786a4f763db05a79b41184d514bd4db14415fbd99af35e46216f660c7d5d847e6efb03316806cec599b113df79c99f053eb4e11d3e2ee20d17804bc883effde18daf977dc594a137109e9108cf759cc677c3570749b7cf275a954c1d53bb0d5761136e781b4cc2d07183ae5389016f6c21706e3a93cc264b5a57ef8d064e4204888a7f73695bacf073788a5deebc1204cf8d5be2fbbf3b78debdf1e7e591c5c326842172413eb96528d6c08638a659cb96e484ef6ce893b2a7b6db28cdf2d18682b614bb47298d25adade5873d12abe9139780c3b7799b0b487c32ded9ff4d22c40945deee1dcf63c36bf2ec00010f84ef391d79053ed36005b37489eb24a506aa3113186d0ac2329b6eb3af2f3ab617c78695b0a89993b47416e634e0d3337a4bafe0aa14b9d5ee1a7ef8d4b37d362c73113b96950e3f270721394ebd651fcdb469272c6bafc94ac652e809090af23171fdae8f2ed3a0167b486d1dc4fcc6692ad7f7c5265c8c82107aea456d485653eef995a2f48e911ff6d31ee316683318ff957b8722a6a07caabb8452e535b4bf6e1f49c8ddd49e1fc04c841224e6d02e52a6a5082e4311e5d3e808321d7c0687d5feb9c6b61d78cd873e265fb62c217b1c0f5c0c9aa6a7fe95cf1182ddbbeb80bce2bf9350485de032f1862f25e0a10b1ba7b61c29ba2426e3c3e0fe3584581221219b18d448a9f9719ece64a721bd858cdfa43b9a52401371f45bdcb8f2f166a8839f82258d04913a02ada05ca0d8636f3f11f3b99f94c38035213723651c4b42dd9d9010950136cd235868a52423fb6e600fea1e9126bd1d185fc274b78e4f0048d67850df76f3eb35ded6cc9a777aabb163dc4f795d6427f01d81cb02ae1a7f26a182c87492bdf186775792e1c6c54ee22b0da9b3543ac11ab288aca57d71dde0a2a9a614b3b80ce6741832d327325f058d1f6d8f1bbeae51554397b1ad47f1b9adfecffd6a6c8b1ff56bed2ac377ab4466c51388edea412581af51259842eb7a49ffc8c0f20246855c17c11fc0741b2c6628ff0d38d158cd5f74eb37f57088679aa1db6522f2e4e5abd69ffb578e9652a3ec578dbdc2d04225071af0fd547a11cf01243e14e7ca4d2d29df9a89741ccd4ee6bba2b2b24f2f99eab30899ec0af002d97d549aed4fc303fb366097d05498ac8badeff8c4a2b00f5869a4a913348bd91518f2013c7081a24ae719be388023514383230212529ee50e1172b23ef141720c65d32dd17b1e250e650e8ce9ba5fc0c63c9e62bd2cea5b3ac4d91e49e68a78c00bd8da5b5c0a596ffdbc7321daf50d1e596f6f7a1af4ff8d133514a93ffd84bbf30da586f71b6f1a305e2ad81fe97ec44b4c8f8ad7656562b4437ea26130e76b53a498e4cd5018a817944e87d867016c96693dacbddad8414d75cf2e9364f543fd8d2cf91decef745bbb6658273d7fc8f4ed5b06daed17c942a6832d7d501959f9c04b34f0f691db333c7c0953c61e59b7cc3cbab6dbdffad5bb1b3666dc50af3f0992f5b3c54ecfdb6403a593c10c2c83918b8eb130c1498f9e82c901efb170c447e97a637124b67a273a35f2d8b7737769058330dc6e5b4dd87066cc2fa576d087c44c15003f41aee9e6216e13353bac0a96be06ac4558737159cfb757ffe15b4dd52fd07552f05ee8c47ca9f67497613295f773bbccde278c0b736ab17d6dfdc0534abff9cbbc278aafc05a93d9c4354061cd77149d3a2cde6899fec16c4748de0a71015ecd08547b08cd949c4e811ea7ef59ff8fe8b54d85061c688b10a7715a214a9331e31b2474b82e24108462d3193bcb5a6330773609035801c53c3fc65f49d616d05904e4061e3e71e4253cd2e7aa9c6a82a5f300cb8f57839db5e72aa9de733012e3a11a963f3662dcf54fac77dafbb3033a2a07d0e49c1d2e62e781b69460746d075144d71d291ba5dc090e721ab9bc88784fa7677ba447b1e9dbb18c50dfd06df63de5c75c9d240b066119834a036bbeeaf24a48c5f11160eca28046f7e6811a978bb90b51ae6853d3adc1541277efefcdbca4f80c08f8830b9d89626f16891606a3f7e5b48b96bc0500910fd2b5e994f7dd2ed9b9a101dca04fa76311ecebac12f238a9c822f9cf87a8d5bb9b376b6c8981d162c4ef580d5c5a69f9033b6458ffd671c0b6e11175a97a16e0d43c3f82bf0640391de81bb8dc7760789032d6c98d70d550d123318099778c45ea214b8c430d4862b88f7f594f78e16bcc77ec732acd874f5367ce850a5c5068569c5e18543116e9c4c2ab6810e2dcc970f8d8a28795e56e290bd98cf767c4dcbd7f5d9c264a07d8049a7934ffd5c949b70ba05e63bb8c1370df7a561b91a7ee3707aba058cbf9010dc36984aa456abc78fdd8ba7ec6565dee69b22d9d70441bd5b9174264171a4bd4539e19d497f5aade75e914a647e3ef3dfed1b00672f69ee5afe2e771548c784c80ab4c32d588554bf7c618d6a6c7150b27b447085c4a4e21288930f4867382798f8ae9a0e2e6badb6bbcbe6ce87aa5df7ee5cca4cd8cfff076f7213717627d4421a29ed3a73a7a2b84260b3ee680f009788be57d01b7d246174773f3ba5f4deacfe49dc7e25586c6eb700884978851305d1bbdea6e20c0c5cbf7d52878429d5bcbf2df3c8ba671a2e9de412378b5df07e8e32fcae40c1894cb5c0919bdaef8b62ad105ccbdb71eb2d45fa6911a502606767e9e61c2bd73e6119e564164770b7af47d204d364b8661671a9f417362284760905ec456bd45a82bf112d486973afa0b9825052f26e87c4a161ea3a8fe3764eff96a22d31a00648b0e51545daf5f9375a0cb8bb7ff576eb60dd915672be915708bb1ad5c58d258a7b6a10b20ef8d061c9890f998a34224a23320bcbd91d520e1e35e877246f922cb5b7a7b01e076aed801e16a2e3ffc16799cfdd52efd1708dadda79f64a71d2015192dd86db04a910b453c251464d9cf21b35a663c541760e48f7c36ad9df0ce2248098a55fa5d40886a7808445733fc2a24e7bb9a38f97e6d319c49436c8abdd26c9d4773b1c3c71391bf973b6c9c4b7b84e979ef0e701be7bb6a8d4903a13ffe5092b3d97d18a575dfce07433e89ebd284b913d8a3da634989777c9d9e9222bf8f7ec0685d26fae2c8b141a1102e3e70ce78a8c9e4b046c3888f8cda0be467d9e64c58bb80f2c1de14f94ffc2cc10c14e9621cd071103f0ddbcc5d3396266f0a6666a51e7829ac8ef535f71808c1c031522577618edde6b84a36013da478fb3bf49747c6f96628cf0bb7f67d2d157f0bdff1c25ef11e758088085460bd259bf9510e4251a74997a427107d27c9e314e62dffc4af72cb7245424d987f5285f25852b7e0d9bedda6ebce305f2d58695c7ad0a4e204fbc9cc26550f35854447aae35b5c0f1e177d1b10fc153383bd980ee3dd9b73d873bb4c53091eb15f0da2b392ef8893c92cf9400085734ce2dfca8cb006d52a3c2aad65b133ba2c38040445e3a7bd316665ffa65628b5f3231f317bf100a2e78637551fde1283955db9b4f99a89e82647c29aeb17c9553d43e8cec8b7707756a8d18769406c86cbfd7002d29a6b2ad693dbec14ac2e18f2a8b9f79d8999b7da1736bf8a4cedc98ca46da0fdb14436bc0eac78d98eed5f65382610c3114aa840360e5e4622292e8b008d81a08d6d344f71be8484164c13b053b82beb99d276756e4abcca2365d46cd5fa229acb973920b43c78e81ad63bd63bc1873835890f6572aeefbf8a4a55b2a6267b34b7e54bb6c28b9aa1ce07bf3d65715ac147e1208b0c351057f8b89b89daa0edad2811b5f9341304c6918f3e331628dcc476fd45b4f7e09dedcf8cbc10dad39decd4b9913b24896b35c0293c0e836c003e7acb53576a5fd46ce7f271f96fbddd13e88e5826a94a0e78b18da9bef1fa05208e8403d734c7ee82a682569e40e518bd195a2450d3c1870d390e73ca0a775bd567538ef37a6e4f359e13aab6913adcb71cf86a10373e21a252fe3f7aacd2ac21cc39ed0090cef33c620e6a29611c8dfaa95da353c138d02c6b2b692aa7c189a689ff7a04b091ed925fe29947568a172641f07784ed87f73bcf595cec65a7ba53fcf11eaaaf9223312250e7798aa4bcb32cccc0d65ed8d7aecb3230d2dfbba58704b9b7aab7e0f11b39c66c1ffa8b1d54125623822245dcc48f0935b343cdc5d3db17d6557bff954a18ef17ad95ac2b35272ede2f73d59789bc0fdbd979443008bd89ab9626ee55819acf5ec152db16f389d6da716ee77af568fd2605b6f7bcb0f183f2209a64965181d04f08cca4ada8000717dd043e07ef0819df397e0b71d8c3fe84607b81273830f32abbde0ecd4f7d1484e5697a04a55e4416ddc5d2b6ddc7cfefe0579c5e0fb4d6938d3451cc36abb46034c33bba0b05b74bae022fd5456b20b45c3558921098f1e7669aaaa42411a4c60de0aca689c078e542015e17a0cff9da8ecbad12341998d6014a16957b9833ad1d47186ba21e81b61fafab77ce0dd51d06e4bd2f09d7e9cd3150615c22e4490929594c7517574d86bfd81666a72698cb91ccdf0ff02a53761bbd6668817b14389a81e4d7a02054b5436f1cd450be369450de638511c401b281ffe478e7fe09407e11c19013994a0cc442bd9c5ed4aa51d6a67f4f73bdf47700a694a4e4c2a78d3643af3b27d0b0036531a969149555cc0fbda22bd76bc43aaa0d1be846925529a8f9e6b6e7617cf1ae17de3d381ad06bff454de6ec97c04d868b92e69f5c2ff6893a56050f8d6e95857739725abaaf8ba50cb1be509d5c558c932aecfeaf9f71881dbc65db1f0cbbe1ddf6800b8790a8407c3fe244ad6b2f767cee1534993a1a01ccfd4f6522490382e3e64861b585443ddc3a54dda078ab273c2d96212ba138ee3fb4d99a2541146502ea07d6226e4dc9bb36ded4f9f094ed39ff4cb8a7ae1da929b41adf59774febb367ba657289bee82ca52609f117de4ff82bd0012d8f0ce339b612505404e4923da56b8da1a5a3f86f02dcc9e9f569f74f5001aeb5082c841c8333ce8cf3b7cade6c687ffca90cf925e8f94406f86d99015cde904373753fd5553bd7e747ada3fe3d24a5d03deb50974f7841b6c03e44793ed1c70ee541cae6c0334fe9cdc5f47e4853d8135e4090fdd0a796dfcc67622a14d18251d28c9fe30490c67a6c95d38804f3a0fd23fffd0934f496ce49c899f0ab35fd101c8611ca80d53088c448f55933bbecf4892a619e1afd044bb5c637d4b02ce41615ba077986456a84ec26bd471172f151dffd7e46d1c5628c1ca7af1fa71e298af87c3e6661c09f4ddf32a63b51900ca2723cd9463bf824683f8899f258e342992f9706009857348bb7277deb7fe9ddd63a85f1a068bfea4a2146450399c85fc6aadf0d34d42a341770b5420db5f738377099f9632c735e21f30f652146fdd39435439ede0d8919a8cc4bccb5d5ad9cc6d7c453936a66ffd999c9ad98772512bf20bc0d123763019bb38480f2058db66160bbf84a2633f14460ce7c99232d168f9084943028f88846e331990b933976d81de24a420eec0c8ab51692ef705b960626dcf9e3c02c5613cff7d0683de340dd7c0bdb5fa17d7d00d64ad4884fd3080cfb1254b7932a8a62d14b3d71570ae793a1bab6b927e6d2c6ea78b9e834101290c3581b2aacbce47f480e85959fb295ba3338e86e48a66e0a7d55bf8450863946cc7409c695a11a7d6bb26c803aba98c7dd6d73405565f7bd36de63ab71a1158f0f28c5a679f2e53b5e86492f1b7feace14649a3413a91434ac5dff314a6e9ee65519b3bd7dfbdcd561dec2dcebac705d532d6043f4078a31770c43f885e6db1bd3cb0e09b5bacb04ce3c07430404c6c853191b1feef14d0705aad3d103b432be9de4d87b7df4c0e4fc2bace901a329cf8c99ba7d296d0f80a48c32f5ea337cea5d5db79f7dd6c354285904d004262bc3e17774395c11e3165214610f49f4e2362f46e29b82f1573ad6dac92cec27f6664d8c00256f3a0a46ca33755242d95cca10419dcb59fe514f5cbe00bedbe50d4690c061402f438b2e37d20f30db9cc2a24045037943892f225362bee3303d8ac2612e0224c399ecd03393971cbd2ec0ae81e4d70995cffae3d3e425751e72f2e58c7d6f977bec8f01e2fda5f04d350ad33a42dafbf4a2e6f367429940d1571111133e6fffa5a2640c6e0bd11bb02e459ff4592e089b38833168f4f7b3d263bd1591c56b66c9aff4ec4b033f910b63cb61a7505def3a2308cdbc47b899d84bfbb358874804fedc16b3f4615ce3d6e5376f031b77b8064315cbcc7132189376fa44beb0f122066db05d2dd5f18c0526d54c8ffe89abac6dad96aad316769cf06642e2278108df8445b8094363ec59f2a796eae1bc292de770fd88634f188bc9b17aac5a83aca766790655ff9d710a61eb24138aa4217c75574b26184a3d142c7a4ebe1b94b4e6c09a056d27fafeb6483a75d4b5e5a54f4dfcce1b7104ee1794c2726948ae0ee07886d55c9dcc59852103c64d97a81c44506bd700789335a2e2ef3e1c22b1239262ad545926d6e9d71a9ddd851d04f590c01fcfceda8c1bc658f622fd67a9737e82e5ca1fcc906964e7e2cc3e577bd569bedb537284324b00f621efd6319461885e57b51bbb8902f8772240dd1c44c5f0cbb18892b73e388047428a8c736f6bbf90749cd80069b7ff6e82de0fcccaa6ecc1627e893518f580cbef3865ab0e789cf964b3417ea41a3adfaef437ca92fefd907941e3a63c758f73c23420a56ed5962d782579bb59294bf8b41ed863f9f1837acaa16f6adf91973635dcab97c400435f9bb96f872784220652998590b727b63dfb60d02654d716bcae87f1d4eb44df5994c70180c357c7746ee2b4071407fd41b7d3936d5ca84e9277a486aee7d75fdf8ea3a90fa97ed275953f832fac04acc184f0c7080a072751dcff0b8741c88f8d90536355e7394a87078807c4714f337976c9ae3531beec57dd6f49adfee7c1e8b0ce5118847f700bd96c32a12d99147f41cf07b4fc5a6a1988458f3d0bea6854d82f8473c2fe66d5e736e3ba8bfaa442d1dd81cfc44c1bbc8424937b239446e1bdbd81c8d624594c3d8698c39a48aba5b720fb0a088c662683078b8fcf81db14546da3409a035ac6e2c55f985d6518abf93496abc3fc90364d62cfc985f06f33c7f88750e6d4b86c72c5db3533606de0e6368c760db474884944b106a996bbfbf604b44412aed9ce439969be0e193c50571d3a40994f1188ff0b4d37b3cb7e76480dd320de671a39c69b2f2ad0545cb72aa4bbf34ccd9b4cc4435b27d482c546c6f228b206c05f51d7a1b4e12c91068c4bbbc478440ede0cf960c0b5c351b7ca5ed3577a8ec6dff01e1af6f1ba43383dbfc136e45e37526f49f59ef3c4bffbb1d3aae5deaed364f7f70d528432acaa882496fa108f89476cf8d4ae9d2dfa7d8a1ce19a223929340e78b27c0f508d4322353031b403d71a8b3c13c82d351296f36ad2dc840d00f388775013c045c05d9c9ce714d1792a5aad517f38bf041d059d38c1450063b36b23045d2f8a7072b1d1b2512d905667a0a7a4e860e9bdd069d2a437b530904894238c810f5405a727253de9bae0c9a2229bf2643ed8839446a475c0c88379e537c597c76f372937363927a778a2c2759d50166222f32b13a3e8708a3be3777ec3fde659e4025f8ab0c0a7a7287d992d7cfde9c986a0360bea9b535d4c87c00b833cefad77e4cdc0936f9de230b422dd59479494b9eec91a12c6d168d0e06330bce79edd153af8717180b29ab2efe5c63541f70284944cc23a3adb87ecd159da104ee500a91fdc6173f453bb16dbd11571016dc2507af7127603e08648c62373e2f3e76eb4e5c64991e8b26287d8de672a7bce069d2faabe2525bc216ae7cfeff031d44529b4a9a86fd76aca91095c8f7fef47a7c8531eb7647f8f3429f3b4bfb3de3e3dac0b22598610f3af31cdbcf67f273b0800cee5e0bb8b82e12a44f41479056151fc9c4dac303fe91c7c9c801a1b85386790f527886afe31af085f778ad21025e197666399049a2efcf04997fc071d3297609d990b76b6d56bfb4b1c62ebc097538784c9625c31a88dadd5d6e19472483ce52ba03c36eb7d71130f1b3d071fd2c3cf9a3315d13d7b9d5c2dae0e7d713ae9f4e9bdcdb84882db5cb9b035280ce3bbe3b125535e85e69ff020e037d719bfb5b67c71843bc2c7ab35a5a2b1059f2c64b41abe2f5035d5277aa6fd85e33ce9765289a5b20b6593983126ac436f2189208adfdc553649bca631fa61174ce91682e257bf27327cc904fcca32808de8a1c3b718d061e999afc0e82ddadf3aefe1f66ae12dc94ce0e3d0234eceb08ef6775ed8568f337d5872a7b2a36f4eb1ca849a0100a9434979012e1cd05feb3d2fd267f20177e95a2d5f6f3f6ec71832770896cb5536cd6ba8d1e43d90823c2f839e41fb6634c020b490804cb4ed4f0eee24c62c0b290016c202711117bb1eb72c49a7640e52d6755e92e613d574b89d1d8205b6faade70e41b7a770d39c71fc53cb1eec54647e9e6fffbb58e5e73d3301d67a6c29bd1ffea1d32317c03c6364c6c7279a843d14f3d9a4f86f5872fc08aa33e6438d34c0f6219eb617edd7ba6d7209feb15afb2742cdf0468826fcd18566241dc4d792068001d1a9878bc4815631e9bfa2bec9231b8637dfe0ddefb391fbab023eae3b5675ca2ff8871ba1cdd3225ea6ec212abfb20f436bb901a5f93c4cfd147e7314b4692979dd8f82836f70961fae5ebaa9092aa4439237696fcfda84d79abb10c8dc58d9518952f41e8af670b4b491fdaebcde6f4803a1fa96f1535a9baf00d156f04bb395cad530d956546040215269b7693fffde7f0d9121d693ef93daac8b96cdd4b6fd9b458b6056d8b30f296c1a83b2713d4eb7f118cf938f3efb2bbc855feb3563cbeaf67548c2fdca555e0f258c0951972f7108feb1c0e5bcf3ac533ab073f0714ac8078a958a1beb6e037086a305fe61befad3c5ec553ba85c0ee86f18b36fc5994d00485c14ee792217cefa3af08c76a1d1ca67b3ab9b15e7a03c2442f4e5d3316d85838ef542be606f1cecdd8b8c4af1aa9f8491850abc98a12081e3362545a784926545151ab56d87e44ad84afe15dfabc7f0a9d0488728f2061dd1db85e3b9406c69f9eda87c488eb39b72a26608aa49a73dd3597ad8671f95bfc6fbadc23f7b4270ab15f7daa964059014c458ce5b586e448f9b20d90a41220bacf0e2311dfb4f5d8c6f06665785ec1464e0eb34163d0a1c93a2ddd149da7ea2e7ff6b43117c487344ff271d70e691f15580afc5e4189fd3b447b1228071692825a2db54183088c40d68fd3f6467aaa60135c283675ead8c4322a79de114fe2e6da157b6193fce7037e8a8f6c748535cdda7135f70f232e7858f16b4f38e318c0a29926fa9c9a206db2872524d7224793946ce9adb90b6088f879f8694b3ec51adc3bd1b010988774f0ef704bb49fc2ba925f4258c2fab8f46da8b4ec3225f8651585cdfcf57379c7200023246dbb0cf30fd61bdc39a1e4c1d8be9537e872ceee1e87c95f12155590ba67bc98f5330b06f78fae13de87cf869d752e4ef27e71a547dfdc29beaeae1a3f0313087590bdb14d7a525d34564bf1d56e3de010296a4e0cdca4cbd793118978a138285dbd81d5fc65ea356c366ef749849b2cc81b7e8f1a1344590b959793a08a7f153e2db10916592b9c315d1baaa9158810a00e33173d5ecc02ebcda0dd31bd5b6b74d3f81d0eeeea66e0a488e03b727a42273ddb338031aef4a77677bba83496c12f2b3cd956bc0b1d0a2b853d7c0d5760e90bce4ed39c80962d31b5b929b62fd8a153a8f67ac356c05d4cf74cc7aa7531393b914ef18fb9d729c7807942553ad56922c8a76eddefea199cefb381d15e9d272fff3b426d0931b492d9d41604a49c29b640a7a6e336e4090b5f6de0663146abfe513e684ce9275c04dc21d848cc06cd372bf554293dd7e63db84b1ec875a328d76edb69abb5e664fbf5e9cc5d33c5cb4ae095756d6648654a7046202628a921b8b9f18fd888e1ea93411f56c62f326c221dcbd4a6f9f9dff0dd9046ae1a24275ee88117396b0a512735e19a107b006f61558225f09f2fd38c97da0b0fd1f8125e027713c220012b68d8d8d2ad4a89ac4652333e7d8fef7da5b2bc37ba5d9dd7c2ae96060cfd8f26976b5ccc4f039dda946be2abfcd2f58005f5e7e3a29541278339830bf524e9bd454f75d75717eab76e096cbf2787c8fa573fd86aada473b982e26b4194d78b85390aa23aa7f536c06fc394a82c1ac33d141ad24d0e6defdbeed11ce27893467d907f4f5d51b1e5e66db9e39daaa5ac2115f849c98c35ff2cc69c417b2225334b5f05d84c42ece25e34cb7db18487ef8749bccea862951b389a38ff1c3fcc795ebbda2baddcbf1ddd2dbfb1803eeb6769ba1ade94851522b0ddc764abb1cfb7a88e0a1d9359b690b4e51035fb6a979f619c180b50d7f08c29dab0625ecabb76c2e416107c43382fb59434fedcfef88c389960225d6eda12a52bd56d4782d69b8415385346b6d09ccb89cbc4f032a92fec424215725460a4ac0eaba94077ffbdc320e327a53f0e0a1420a14771f55b058e46258be851993e2892a28a9d6e1c2e3f7112e70d016ed39ef65b39274cb1e2b60a7687b09107df428ebd973028c248f4f3cd43897ce70e4383e44cdf3939f19374dd46fad382eb2177bbaa735681ce73a18f3b9e03629e21f56e0a1e6a0d3ed03a1287aaaadf14125e700eebbab63c81611dd3d24dfebed27841dfe35323d684bd28bb91de236a1b2e6b28fd6a65486c45dbf227618ce259dcd31c8de988b6f560da29e509fcde6723c079e1b150fb9a5686e569839dbbd60a6f25cfc51321c1332b3637a4ed", 0x2000, &(0x7f0000004a40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000400)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) ioctl$sock_SIOCETHTOOL(r2, 0x80086601, 0x0) 12:52:07 executing program 4: r0 = socket(0x2, 0x80805, 0x0) sendmmsg$inet_sctp(r0, &(0x7f0000001a40)=[{&(0x7f0000000000)=@in={0x2, 0x0, @initdev={0xac, 0x1e, 0x0, 0x0}}, 0x10, &(0x7f0000000300)=[{&(0x7f0000000240)="12", 0x1}], 0x1}], 0x1, 0x0) r1 = socket$inet(0x2, 0x80001, 0x84) getsockopt$inet_sctp_SCTP_MAX_BURST(r1, 0x84, 0x14, &(0x7f0000000000)=@assoc_value={0x0}, &(0x7f0000000040)=0x8) setsockopt$inet_sctp_SCTP_DELAYED_SACK(r0, 0x84, 0x10, &(0x7f0000000200)=@sack_info={r2, 0x2, 0x2}, 0xc) 12:52:07 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f000099e000)={0x2, 0x4e20, @local}, 0x10) sendto$inet(r0, &(0x7f0000000140), 0xffffffffffffff58, 0x20008005, &(0x7f0000000100)={0x2, 0x4e20}, 0x10) r1 = socket$packet(0x11, 0xa, 0x300) setsockopt$SO_ATTACH_FILTER(r1, 0x1, 0x1a, &(0x7f0000000040)={0x2, &(0x7f0000000100)=[{0x28, 0x0, 0x0, 0xfffff034}, {0x80000006, 0x0, 0x0, 0x20}]}, 0x8) r2 = creat(&(0x7f0000000000)='./file0\x00', 0xd) bind$packet(r2, &(0x7f0000000080)={0x11, 0xf5, 0x0, 0x1, 0x1f, 0x6, @local}, 0x14) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c03, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x0, 0x5}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) setsockopt$inet_tcp_TCP_MD5SIG(0xffffffffffffffff, 0x6, 0xe, &(0x7f00000002c0)={@in6={{0xa, 0x4e23, 0x74, @dev={0xfe, 0x80, '\x00', 0x2f}, 0x200}}, 0x0, 0x0, 0x4d, 0x0, "2a6d9df8ff129e94f2248a6b34db3136ae98475c77e7223b86048369ee119bdf869dddb1cdeb508a62c1de8d1a59676cc8b4d63b519ff468b9c231c4c7749d12129702d9e379b09ba528441e6f6dd9bd"}, 0xd8) recvfrom(r0, &(0x7f0000000480)=""/110, 0xfffffe32, 0x734, 0x0, 0xffffffffffffff39) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000280)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000000240)={&(0x7f0000000180)=ANY=[@ANYRES64=r1, @ANYRESHEX], 0x64}}, 0x8880) 12:52:07 executing program 0: openat$sysctl(0xffffffffffffff9c, &(0x7f0000000040)='/proc/sys/net/ipv4/tcp_syncookies\x00', 0x1, 0x0) openat$sysctl(0xffffffffffffff9c, &(0x7f0000000100)='/proc/sys/net/ipv4/tcp_syncookies\x00', 0x1, 0x0) r0 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000000080)='fd/4\x00') read$ptp(r0, 0x0, 0x0) 12:52:07 executing program 1: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r0, &(0x7f00000000c0)=ANY=[], 0x208e24b) socketpair$tipc(0x1e, 0x2, 0x0, &(0x7f0000000040)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r1, 0x8912, 0x400308) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r0, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cgroup.controllers\x00', 0xb00000000065808, 0x0) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$ethtool(&(0x7f0000000540), 0xffffffffffffffff) sendmsg$ETHTOOL_MSG_COALESCE_SET(0xffffffffffffffff, &(0x7f0000000640)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000000)={0x34, r4, 0x401, 0x0, 0x0, {}, [@ETHTOOL_A_COALESCE_HEADER={0x18, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'netdevsim0\x00'}]}, @ETHTOOL_A_COALESCE_PKT_RATE_LOW={0x8}]}, 0x34}}, 0x0) sendfile(r3, r2, 0x0, 0xffffffff) [ 675.413807][ T5125] 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. 12:52:07 executing program 4: r0 = socket(0x2, 0x80805, 0x0) sendmmsg$inet_sctp(r0, &(0x7f0000001a40)=[{&(0x7f0000000000)=@in={0x2, 0x0, @initdev={0xac, 0x1e, 0x0, 0x0}}, 0x10, &(0x7f0000000300)=[{&(0x7f0000000240)="12", 0x1}], 0x1}], 0x1, 0x0) r1 = socket$inet(0x2, 0x80001, 0x84) getsockopt$inet_sctp_SCTP_MAX_BURST(r1, 0x84, 0x14, &(0x7f0000000000)=@assoc_value={0x0}, &(0x7f0000000040)=0x8) setsockopt$inet_sctp_SCTP_DELAYED_SACK(r0, 0x84, 0x10, &(0x7f0000000200)=@sack_info={r2, 0x2, 0x2}, 0xc) 12:52:07 executing program 0: openat$sysctl(0xffffffffffffff9c, &(0x7f0000000040)='/proc/sys/net/ipv4/tcp_syncookies\x00', 0x1, 0x0) openat$sysctl(0xffffffffffffff9c, &(0x7f0000000100)='/proc/sys/net/ipv4/tcp_syncookies\x00', 0x1, 0x0) r0 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000000080)='fd/4\x00') read$ptp(r0, 0x0, 0x0) [ 675.490832][ T36] audit: type=1804 audit(1630587127.873:257): pid=5127 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/530/cgroup.controllers" dev="sda1" ino=15009 res=1 errno=0 12:52:08 executing program 2: pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) openat$procfs(0xffffffffffffff9c, &(0x7f00000000c0)='/proc/timer_list\x00', 0x0, 0x0) perf_event_open$cgroup(&(0x7f0000000340)={0x3, 0x80, 0x3, 0xa1, 0x20, 0x3, 0x0, 0x100, 0x40, 0x4, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x9, 0x0, @perf_bp={&(0x7f0000000280), 0x4}, 0x844a0, 0x0, 0x0, 0x6, 0x0, 0x0, 0xfff, 0x0, 0x200}, 0xffffffffffffffff, 0x4, 0xffffffffffffffff, 0x0) io_submit(0x0, 0x4, &(0x7f0000005e00)=[&(0x7f0000000700)={0x0, 0x0, 0x0, 0x0, 0x4, r0, 0x0, 0x0, 0x0, 0x0, 0x2}, &(0x7f0000000ac0)={0x0, 0x0, 0x0, 0x7, 0xfd9, r1, &(0x7f0000001c80)}, &(0x7f0000001d40)={0x0, 0x0, 0x0, 0x5, 0x0, r1, &(0x7f0000004c40)="da9e0ad49e0fc4291ce1e10c1f6eabe8cf1043290ceb25d5a420a54137e42782e49b76f563c757bad9b1d2d8a9e5080d70b5301932f37831f3f2ce0f5fb839189fee583df04fd16d3b0a26e2eb5cf5de4003fb1be5b9953912e401b3b29aa26cb20bcebce0e1ec9a6d449dd4f3dab5603e0d2bb970efbb317b8c21680d4ab02ed5da56a86e2bbd64a21a55249724ad9780a3cb6fb8a4f84db9a34669db66d5e267b4ec880247eae5fa6dc511933d0f6be7e55749933a3e011ab102cd3823a2cfcf4a5784cd06947d2867a77039cd410e66adc8621723775451f75c2dff9647a83e90298b7df449d4ebc1447d9f6657999f939637de139f0b3719dee3457c95f24749c1f6cfa001011b5033d838ea3b314ce44efffd80aa568a023dc8ec1b37a2f4ad68b9c4df1b47779fb5f3e4277f041462c3bdb9d843e8345c1620969016e4f8d8c0ee8604dd8018a5ffca5be3f39446afca403c3c28877194fe671dbf44faded797b01d02b5a7ce125a8b2ddab8ece932a3b3aef0b3497f1c62be4d4c8fdaaf92e6c63e9b9aeabb6fcb7c2bef7fe99ce2bdb3bc5de9d158907c675437504f9c26cc6fb9588001f0622c2d28207e5d657110edd555dbadf5c739055d935cfb6f26738115969bce8c751da95f22fb5770d3b5f228e6d95984359078d14b012348c5d79ffe544df79d659bd38ec1e40209b9a4676d7db40c9b76b52a3907dcf0d996637dc60ae89a070e357414dc50db463f0b17fb04bec4612ba36cf1a26096b856353974b75024e2e14d5cf95dd3d9070a0a1eafc166238e6e4104d84158675b69c6273748eb57271d250a0c16ba666822b1e5e02a91bb17fdf921f37d74cd33508369500066456952a11ed6c9a7140a2101a39b43d85ac873549270545d9c886028067b05aa8cfa52f40ba4565aff8fdfab19bab7cc8ddc897e2a3564071fd8f51fae028dca24db7e7268c44a1591539841b1294f9292e5f215dec8ca8d3168332df0cec1ef49f2939b2de013f49a089bdfe471d0c8175aaede2af31050d031c67b231ee54a7c74da59289d7ee381c613348f43f6a1069be3ce773a63a44cb7f641a6ae5863af79608848674973c4d531dff6b7050c034c0adb6d97b6ac1f269dc4d81d9081e62c089cdc3a33b1c64380b94d5ceb0ba21c3e0e4df34005126930958713f99652e4d3ece16a2fdaf8fbf2a1a53ad654227005006a86a10802af2a188085e12bad0c4bd6320b2eaec0b2824f81e9fa57f048a71b8e390e6b9cc272dac583b78a50f97d6638baef5971ff4b1de1debfeedfe910728b9bba3a52d850ce321d9738e532dc54d90d28f94dcea2355cea2b153cb9dae690270844f368eb485fb4dff660a5407e43b980b676630ce7dce0820a6f655451e97a6feda32cef611e7f0bbb8386252a091a73f9ecb2ef7a388107b6a30cf041ae60edce7fa79283ede8c3f79269c811f697b8c109bdc7e316fb8a055876b366e6dcc344e2eb48b2f48d53d3997969b33b90920e1cf3db90ecbff7e9061cbd806d283b56f98b1b20b7a1aae3a907b7119c0ed7430ecb0e970304c80531c89afe25e94720b48f5e6f67b022705b31a67a1547d67d4f41ba41148443a68dd9afb8c7d56bc46717e7bbc4383a1e39d2950414eb0de772a6cc918a87eadb18be3b823f7a1357b5dbc672542aca1615fc0e1a7fa15620a3748935ae5cae5250e22cfd475781f62c9e520c855c50707e8e5af8bc59cf1d4f156a8fe4a28d39bfd4f9d3ee97161d3fd68b1262e28b0f04c15a5ff53fd46e7c83d8081cd64b99980d0550606e2292d1e1d29d7dc54c2c92227f5906f8757e2218e944ac3d7a56dd857fa7d9c025e9293debb7b2d8ebd3f7eb12e046f9d05e4c7ecb2d24c5556a2d475794a74be0623fe36ffeafd20a745de075e51eec0bbc1c0dbfab64ae43b07f8cd52e4b00b324fa040db4465c68777f9251e3656e5c0bf5e56e55276dbc26bc660d1411ccf3f6a3ed06935fa4052ad395758cf2fa863208e8d03417b044dc3b77e0e2f755f01f51a33c53a5831d3cbfecab1dec6f540b52a77c6bad2b7eed861bfd79a121aa59d0cd8d09bb90885c5e9cb95f09750642a8aeeed3f580b441b925a9e831cbc56cdfc1ef2f129c2cdd323c3b328dddf0881c8af46df121d06af81533e5fbb07a2747cc510b25b30e30cc7461de5d8867706174172e88a9da88e66c080f800f3c69e70d6048f98b33dbfc1e03c2605a779b4d3624c79734e25a394c3dfc5bb5e6748b3ce0e9ac2f81d9f1527261af1a45cd152f5ea77fb789ad814e2223450bbb8b64af90ad9428a6d619479ecbc604c1bde2c1e824b0d161c0ee32f837bf29b33ff73e9763e27a40569f261948a4a4da10e97e7df252578e0c469016e3b42e5180be230888d5c294ede4f2897df1cf99feeb5f3b40586d894f055aead006348f099ab117e41bcf9bda1e2d9512c1779ff99b8b0fa28dff3715350e54803475396d598f69b30c2f9fed134e2abed33fb23812ab537ab6fc77459c6ebe7baca135a563e3fd4897bb37e6670730b38751d11e9cd0020067d4065e13f872a836df7f940eb3809c8bd91a59164065c569502c8b7f519c45eb86c5f2aff5f1f2597777b672d84886a92344e71b93ab333c2f2463f86444fcbff7c919e6f6a2d2cfd1ad17afe7ccdb6dcbe41ccf00a8281cbb8adda34df43dea0f7e835b99ee788ceceeebfacd789afc9ca559ac00133f319088ffbec26bbc2937e56e9ef7bac19385061af4597d2dc45ccbebecbc7634cfbfeb6e8d7ecf6c361972137ab921d57ea5f39403f813829cc0e408e1563d503f634085ee09063e51d8f658402b41a7deb56d43e6", 0x7e0, 0x8, 0x0, 0x7}, 0x0]) setsockopt$SO_ATTACH_FILTER(0xffffffffffffffff, 0x1, 0x1a, 0x0, 0x0) r2 = socket$inet_udp(0x2, 0x2, 0x0) close(r2) socket$inet_icmp_raw(0x2, 0x3, 0x1) write$binfmt_misc(r1, &(0x7f0000000140)=ANY=[], 0x4240a2a0) perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50a, 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, 0x4, 0x0, @perf_bp={0x0}}, 0x0, 0xfbffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_MODIFY_ATTRIBUTES(0xffffffffffffffff, 0x4008240b, &(0x7f0000000100)={0x0, 0x80, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3ff, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x401, 0x0, @perf_config_ext, 0x10800, 0x0, 0xff, 0x0, 0x0, 0x2, 0x0, 0x0, 0x7, 0x0, 0x5}) bind$inet(r2, &(0x7f00000001c0)={0x2, 0x0, @local}, 0x10) connect$inet(r2, &(0x7f0000000040)={0x2, 0x0, @multicast2}, 0x10) splice(r0, 0x0, r2, 0x0, 0x2ffff, 0x0) recvmmsg$unix(0xffffffffffffffff, &(0x7f0000004a40)=[{{&(0x7f0000000280), 0x6e, &(0x7f0000000540)=[{&(0x7f0000000400)=""/95, 0x5f}, {0x0}], 0x2, 0x0, 0x18}}, {{&(0x7f00000005c0), 0x6e, 0x0, 0x0, &(0x7f0000000ac0)}}, {{0x0, 0x0, &(0x7f0000001d80)=[{0x0}, {&(0x7f0000001c40)=""/2, 0x2}], 0x2}}, {{&(0x7f0000002f00)=@abs, 0x6e, 0x0}}, {{&(0x7f0000003180)=@abs, 0x6e, &(0x7f0000003280)=[{0x0}], 0x1}}, {{&(0x7f00000032c0), 0x6e, 0x0}}], 0x6, 0x40001042, 0x0) perf_event_open(&(0x7f0000000200)={0x0, 0x80, 0x0, 0xa0, 0x1f, 0x35, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x2, @perf_bp={&(0x7f0000000180)}, 0x0, 0xff, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xafa, 0x0, 0x401}, 0x0, 0x0, 0xffffffffffffffff, 0x9) 12:52:08 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$inet6(0xa, 0x802, 0x0) connect$inet6(r0, &(0x7f0000000080)={0xa, 0x0, 0x0, @dev={0xfe, 0x80, '\x00', 0x10}, 0x4}, 0x1c) sendmmsg(r0, &(0x7f0000002cc0), 0x1a3, 0x0) 12:52:08 executing program 0: openat$sysctl(0xffffffffffffff9c, &(0x7f0000000040)='/proc/sys/net/ipv4/tcp_syncookies\x00', 0x1, 0x0) openat$sysctl(0xffffffffffffff9c, &(0x7f0000000100)='/proc/sys/net/ipv4/tcp_syncookies\x00', 0x1, 0x0) r0 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000000080)='fd/4\x00') read$ptp(r0, 0x0, 0x0) 12:52:08 executing program 0: perf_event_open(&(0x7f00000012c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getpid() r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) r1 = socket$inet_udp(0x2, 0x2, 0x0) write$binfmt_misc(0xffffffffffffffff, 0x0, 0x30) perf_event_open(&(0x7f0000000300)={0x0, 0x80, 0x1e, 0x7, 0xb5, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x37e, 0x2, @perf_bp={&(0x7f0000000000), 0x3}, 0x50008, 0x9, 0x4, 0x0, 0x7, 0x3, 0x8, 0x0, 0x26007f6e, 0x0, 0x6}, r0, 0x0, 0xffffffffffffffff, 0x2) setsockopt$SO_BINDTODEVICE_wg(r1, 0x1, 0x19, &(0x7f00000000c0)='wg1\x00', 0x4) setsockopt$sock_int(r1, 0x1, 0x6, &(0x7f0000000140)=0x32, 0x4) connect$inet(r1, &(0x7f00000002c0)={0x2, 0x0, @broadcast}, 0x10) sendmmsg(r1, &(0x7f00000038c0), 0x4000000000000a8, 0x0) socket$inet_udp(0x2, 0x2, 0x0) 12:52:08 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$inet6(0xa, 0x802, 0x0) connect$inet6(r0, &(0x7f0000000080)={0xa, 0x0, 0x0, @dev={0xfe, 0x80, '\x00', 0x10}, 0x4}, 0x1c) sendmmsg(r0, &(0x7f0000002cc0), 0x1a3, 0x0) 12:52:08 executing program 5: openat(0xffffffffffffff9c, &(0x7f000000c380)='./file0\x00', 0x40, 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000100)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000100000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000103c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000000040)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000e3c0)="000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba045abcd5dfc67d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000209bfd66eea210560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001354c4b600", 0x2000, &(0x7f00000062c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006340)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) r2 = openat(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x1c1401, 0x0) syz_fuse_handle_req(r0, &(0x7f0000002140)="d23d5663422096c70d65f08cdbf2314bf6bb40a9cacb2aad6349ea9ea6e7cff01ca62558676c93a258ab27eb5f462d1e8ba7015a3deee2ffe25fe6775ea395c2c1b92044d5c571dcfae5eae8af17d4cf05e68d37c0b13d326813f143873cb8c16805b63ed358e78ac9b6efc8101d083ffa99dced434133fa34bf2865b1e2b71325bd359fa62d4b01bbe862c9a5bdabe4b2ee29fd44d897ea6ffd89804b24093639638683187882addfb562eaf3a723b5e71aa58b94b67bd40771243806ffee7b10e1b753437de8cbc2d50dc6450247e2f02d4b2f91044f94ff4ab56878872347c63444d26619b34b2df31a993640b18e802d4465f513c73683f766d5986bf496a6b3272cfc91b97c708240c4dd727bc3b5752ba6b095a30358674c212c8359533cc3a0412154f8f3ff37b2140686787ab49cf6ae3275ab7a4edf8af266ff97ea4f134531d43e8399eb39e5f22941e8b6602aa8be87b74cb66ba58d4fe6d91d3055a8c2a1ddb6271bb21bc8607f06b1e215d113001fe98682f17dcc1a1d95e7f1d1009cf07673eecad819dbd57779b6e08f70b2fdbb10a50ee843917d881edbf66804750df08d97fc060b6c541ecfeae87fc288de6113e89360a193f32847d513463c72a907f8beeb3917c786a4f763db05a79b41184d514bd4db14415fbd99af35e46216f660c7d5d847e6efb03316806cec599b113df79c99f053eb4e11d3e2ee20d17804bc883effde18daf977dc594a137109e9108cf759cc677c3570749b7cf275a954c1d53bb0d5761136e781b4cc2d07183ae5389016f6c21706e3a93cc264b5a57ef8d064e4204888a7f73695bacf073788a5deebc1204cf8d5be2fbbf3b78debdf1e7e591c5c326842172413eb96528d6c08638a659cb96e484ef6ce893b2a7b6db28cdf2d18682b614bb47298d25adade5873d12abe9139780c3b7799b0b487c32ded9ff4d22c40945deee1dcf63c36bf2ec00010f84ef391d79053ed36005b37489eb24a506aa3113186d0ac2329b6eb3af2f3ab617c78695b0a89993b47416e634e0d3337a4bafe0aa14b9d5ee1a7ef8d4b37d362c73113b96950e3f270721394ebd651fcdb469272c6bafc94ac652e809090af23171fdae8f2ed3a0167b486d1dc4fcc6692ad7f7c5265c8c82107aea456d485653eef995a2f48e911ff6d31ee316683318ff957b8722a6a07caabb8452e535b4bf6e1f49c8ddd49e1fc04c841224e6d02e52a6a5082e4311e5d3e808321d7c0687d5feb9c6b61d78cd873e265fb62c217b1c0f5c0c9aa6a7fe95cf1182ddbbeb80bce2bf9350485de032f1862f25e0a10b1ba7b61c29ba2426e3c3e0fe3584581221219b18d448a9f9719ece64a721bd858cdfa43b9a52401371f45bdcb8f2f166a8839f82258d04913a02ada05ca0d8636f3f11f3b99f94c38035213723651c4b42dd9d9010950136cd235868a52423fb6e600fea1e9126bd1d185fc274b78e4f0048d67850df76f3eb35ded6cc9a777aabb163dc4f795d6427f01d81cb02ae1a7f26a182c87492bdf186775792e1c6c54ee22b0da9b3543ac11ab288aca57d71dde0a2a9a614b3b80ce6741832d327325f058d1f6d8f1bbeae51554397b1ad47f1b9adfecffd6a6c8b1ff56bed2ac377ab4466c51388edea412581af51259842eb7a49ffc8c0f20246855c17c11fc0741b2c6628ff0d38d158cd5f74eb37f57088679aa1db6522f2e4e5abd69ffb578e9652a3ec578dbdc2d04225071af0fd547a11cf01243e14e7ca4d2d29df9a89741ccd4ee6bba2b2b24f2f99eab30899ec0af002d97d549aed4fc303fb366097d05498ac8badeff8c4a2b00f5869a4a913348bd91518f2013c7081a24ae719be388023514383230212529ee50e1172b23ef141720c65d32dd17b1e250e650e8ce9ba5fc0c63c9e62bd2cea5b3ac4d91e49e68a78c00bd8da5b5c0a596ffdbc7321daf50d1e596f6f7a1af4ff8d133514a93ffd84bbf30da586f71b6f1a305e2ad81fe97ec44b4c8f8ad7656562b4437ea26130e76b53a498e4cd5018a817944e87d867016c96693dacbddad8414d75cf2e9364f543fd8d2cf91decef745bbb6658273d7fc8f4ed5b06daed17c942a6832d7d501959f9c04b34f0f691db333c7c0953c61e59b7cc3cbab6dbdffad5bb1b3666dc50af3f0992f5b3c54ecfdb6403a593c10c2c83918b8eb130c1498f9e82c901efb170c447e97a637124b67a273a35f2d8b7737769058330dc6e5b4dd87066cc2fa576d087c44c15003f41aee9e6216e13353bac0a96be06ac4558737159cfb757ffe15b4dd52fd07552f05ee8c47ca9f67497613295f773bbccde278c0b736ab17d6dfdc0534abff9cbbc278aafc05a93d9c4354061cd77149d3a2cde6899fec16c4748de0a71015ecd08547b08cd949c4e811ea7ef59ff8fe8b54d85061c688b10a7715a214a9331e31b2474b82e24108462d3193bcb5a6330773609035801c53c3fc65f49d616d05904e4061e3e71e4253cd2e7aa9c6a82a5f300cb8f57839db5e72aa9de733012e3a11a963f3662dcf54fac77dafbb3033a2a07d0e49c1d2e62e781b69460746d075144d71d291ba5dc090e721ab9bc88784fa7677ba447b1e9dbb18c50dfd06df63de5c75c9d240b066119834a036bbeeaf24a48c5f11160eca28046f7e6811a978bb90b51ae6853d3adc1541277efefcdbca4f80c08f8830b9d89626f16891606a3f7e5b48b96bc0500910fd2b5e994f7dd2ed9b9a101dca04fa76311ecebac12f238a9c822f9cf87a8d5bb9b376b6c8981d162c4ef580d5c5a69f9033b6458ffd671c0b6e11175a97a16e0d43c3f82bf0640391de81bb8dc7760789032d6c98d70d550d123318099778c45ea214b8c430d4862b88f7f594f78e16bcc77ec732acd874f5367ce850a5c5068569c5e18543116e9c4c2ab6810e2dcc970f8d8a28795e56e290bd98cf767c4dcbd7f5d9c264a07d8049a7934ffd5c949b70ba05e63bb8c1370df7a561b91a7ee3707aba058cbf9010dc36984aa456abc78fdd8ba7ec6565dee69b22d9d70441bd5b9174264171a4bd4539e19d497f5aade75e914a647e3ef3dfed1b00672f69ee5afe2e771548c784c80ab4c32d588554bf7c618d6a6c7150b27b447085c4a4e21288930f4867382798f8ae9a0e2e6badb6bbcbe6ce87aa5df7ee5cca4cd8cfff076f7213717627d4421a29ed3a73a7a2b84260b3ee680f009788be57d01b7d246174773f3ba5f4deacfe49dc7e25586c6eb700884978851305d1bbdea6e20c0c5cbf7d52878429d5bcbf2df3c8ba671a2e9de412378b5df07e8e32fcae40c1894cb5c0919bdaef8b62ad105ccbdb71eb2d45fa6911a502606767e9e61c2bd73e6119e564164770b7af47d204d364b8661671a9f417362284760905ec456bd45a82bf112d486973afa0b9825052f26e87c4a161ea3a8fe3764eff96a22d31a00648b0e51545daf5f9375a0cb8bb7ff576eb60dd915672be915708bb1ad5c58d258a7b6a10b20ef8d061c9890f998a34224a23320bcbd91d520e1e35e877246f922cb5b7a7b01e076aed801e16a2e3ffc16799cfdd52efd1708dadda79f64a71d2015192dd86db04a910b453c251464d9cf21b35a663c541760e48f7c36ad9df0ce2248098a55fa5d40886a7808445733fc2a24e7bb9a38f97e6d319c49436c8abdd26c9d4773b1c3c71391bf973b6c9c4b7b84e979ef0e701be7bb6a8d4903a13ffe5092b3d97d18a575dfce07433e89ebd284b913d8a3da634989777c9d9e9222bf8f7ec0685d26fae2c8b141a1102e3e70ce78a8c9e4b046c3888f8cda0be467d9e64c58bb80f2c1de14f94ffc2cc10c14e9621cd071103f0ddbcc5d3396266f0a6666a51e7829ac8ef535f71808c1c031522577618edde6b84a36013da478fb3bf49747c6f96628cf0bb7f67d2d157f0bdff1c25ef11e758088085460bd259bf9510e4251a74997a427107d27c9e314e62dffc4af72cb7245424d987f5285f25852b7e0d9bedda6ebce305f2d58695c7ad0a4e204fbc9cc26550f35854447aae35b5c0f1e177d1b10fc153383bd980ee3dd9b73d873bb4c53091eb15f0da2b392ef8893c92cf9400085734ce2dfca8cb006d52a3c2aad65b133ba2c38040445e3a7bd316665ffa65628b5f3231f317bf100a2e78637551fde1283955db9b4f99a89e82647c29aeb17c9553d43e8cec8b7707756a8d18769406c86cbfd7002d29a6b2ad693dbec14ac2e18f2a8b9f79d8999b7da1736bf8a4cedc98ca46da0fdb14436bc0eac78d98eed5f65382610c3114aa840360e5e4622292e8b008d81a08d6d344f71be8484164c13b053b82beb99d276756e4abcca2365d46cd5fa229acb973920b43c78e81ad63bd63bc1873835890f6572aeefbf8a4a55b2a6267b34b7e54bb6c28b9aa1ce07bf3d65715ac147e1208b0c351057f8b89b89daa0edad2811b5f9341304c6918f3e331628dcc476fd45b4f7e09dedcf8cbc10dad39decd4b9913b24896b35c0293c0e836c003e7acb53576a5fd46ce7f271f96fbddd13e88e5826a94a0e78b18da9bef1fa05208e8403d734c7ee82a682569e40e518bd195a2450d3c1870d390e73ca0a775bd567538ef37a6e4f359e13aab6913adcb71cf86a10373e21a252fe3f7aacd2ac21cc39ed0090cef33c620e6a29611c8dfaa95da353c138d02c6b2b692aa7c189a689ff7a04b091ed925fe29947568a172641f07784ed87f73bcf595cec65a7ba53fcf11eaaaf9223312250e7798aa4bcb32cccc0d65ed8d7aecb3230d2dfbba58704b9b7aab7e0f11b39c66c1ffa8b1d54125623822245dcc48f0935b343cdc5d3db17d6557bff954a18ef17ad95ac2b35272ede2f73d59789bc0fdbd979443008bd89ab9626ee55819acf5ec152db16f389d6da716ee77af568fd2605b6f7bcb0f183f2209a64965181d04f08cca4ada8000717dd043e07ef0819df397e0b71d8c3fe84607b81273830f32abbde0ecd4f7d1484e5697a04a55e4416ddc5d2b6ddc7cfefe0579c5e0fb4d6938d3451cc36abb46034c33bba0b05b74bae022fd5456b20b45c3558921098f1e7669aaaa42411a4c60de0aca689c078e542015e17a0cff9da8ecbad12341998d6014a16957b9833ad1d47186ba21e81b61fafab77ce0dd51d06e4bd2f09d7e9cd3150615c22e4490929594c7517574d86bfd81666a72698cb91ccdf0ff02a53761bbd6668817b14389a81e4d7a02054b5436f1cd450be369450de638511c401b281ffe478e7fe09407e11c19013994a0cc442bd9c5ed4aa51d6a67f4f73bdf47700a694a4e4c2a78d3643af3b27d0b0036531a969149555cc0fbda22bd76bc43aaa0d1be846925529a8f9e6b6e7617cf1ae17de3d381ad06bff454de6ec97c04d868b92e69f5c2ff6893a56050f8d6e95857739725abaaf8ba50cb1be509d5c558c932aecfeaf9f71881dbc65db1f0cbbe1ddf6800b8790a8407c3fe244ad6b2f767cee1534993a1a01ccfd4f6522490382e3e64861b585443ddc3a54dda078ab273c2d96212ba138ee3fb4d99a2541146502ea07d6226e4dc9bb36ded4f9f094ed39ff4cb8a7ae1da929b41adf59774febb367ba657289bee82ca52609f117de4ff82bd0012d8f0ce339b612505404e4923da56b8da1a5a3f86f02dcc9e9f569f74f5001aeb5082c841c8333ce8cf3b7cade6c687ffca90cf925e8f94406f86d99015cde904373753fd5553bd7e747ada3fe3d24a5d03deb50974f7841b6c03e44793ed1c70ee541cae6c0334fe9cdc5f47e4853d8135e4090fdd0a796dfcc67622a14d18251d28c9fe30490c67a6c95d38804f3a0fd23fffd0934f496ce49c899f0ab35fd101c8611ca80d53088c448f55933bbecf4892a619e1afd044bb5c637d4b02ce41615ba077986456a84ec26bd471172f151dffd7e46d1c5628c1ca7af1fa71e298af87c3e6661c09f4ddf32a63b51900ca2723cd9463bf824683f8899f258e342992f9706009857348bb7277deb7fe9ddd63a85f1a068bfea4a2146450399c85fc6aadf0d34d42a341770b5420db5f738377099f9632c735e21f30f652146fdd39435439ede0d8919a8cc4bccb5d5ad9cc6d7c453936a66ffd999c9ad98772512bf20bc0d123763019bb38480f2058db66160bbf84a2633f14460ce7c99232d168f9084943028f88846e331990b933976d81de24a420eec0c8ab51692ef705b960626dcf9e3c02c5613cff7d0683de340dd7c0bdb5fa17d7d00d64ad4884fd3080cfb1254b7932a8a62d14b3d71570ae793a1bab6b927e6d2c6ea78b9e834101290c3581b2aacbce47f480e85959fb295ba3338e86e48a66e0a7d55bf8450863946cc7409c695a11a7d6bb26c803aba98c7dd6d73405565f7bd36de63ab71a1158f0f28c5a679f2e53b5e86492f1b7feace14649a3413a91434ac5dff314a6e9ee65519b3bd7dfbdcd561dec2dcebac705d532d6043f4078a31770c43f885e6db1bd3cb0e09b5bacb04ce3c07430404c6c853191b1feef14d0705aad3d103b432be9de4d87b7df4c0e4fc2bace901a329cf8c99ba7d296d0f80a48c32f5ea337cea5d5db79f7dd6c354285904d004262bc3e17774395c11e3165214610f49f4e2362f46e29b82f1573ad6dac92cec27f6664d8c00256f3a0a46ca33755242d95cca10419dcb59fe514f5cbe00bedbe50d4690c061402f438b2e37d20f30db9cc2a24045037943892f225362bee3303d8ac2612e0224c399ecd03393971cbd2ec0ae81e4d70995cffae3d3e425751e72f2e58c7d6f977bec8f01e2fda5f04d350ad33a42dafbf4a2e6f367429940d1571111133e6fffa5a2640c6e0bd11bb02e459ff4592e089b38833168f4f7b3d263bd1591c56b66c9aff4ec4b033f910b63cb61a7505def3a2308cdbc47b899d84bfbb358874804fedc16b3f4615ce3d6e5376f031b77b8064315cbcc7132189376fa44beb0f122066db05d2dd5f18c0526d54c8ffe89abac6dad96aad316769cf06642e2278108df8445b8094363ec59f2a796eae1bc292de770fd88634f188bc9b17aac5a83aca766790655ff9d710a61eb24138aa4217c75574b26184a3d142c7a4ebe1b94b4e6c09a056d27fafeb6483a75d4b5e5a54f4dfcce1b7104ee1794c2726948ae0ee07886d55c9dcc59852103c64d97a81c44506bd700789335a2e2ef3e1c22b1239262ad545926d6e9d71a9ddd851d04f590c01fcfceda8c1bc658f622fd67a9737e82e5ca1fcc906964e7e2cc3e577bd569bedb537284324b00f621efd6319461885e57b51bbb8902f8772240dd1c44c5f0cbb18892b73e388047428a8c736f6bbf90749cd80069b7ff6e82de0fcccaa6ecc1627e893518f580cbef3865ab0e789cf964b3417ea41a3adfaef437ca92fefd907941e3a63c758f73c23420a56ed5962d782579bb59294bf8b41ed863f9f1837acaa16f6adf91973635dcab97c400435f9bb96f872784220652998590b727b63dfb60d02654d716bcae87f1d4eb44df5994c70180c357c7746ee2b4071407fd41b7d3936d5ca84e9277a486aee7d75fdf8ea3a90fa97ed275953f832fac04acc184f0c7080a072751dcff0b8741c88f8d90536355e7394a87078807c4714f337976c9ae3531beec57dd6f49adfee7c1e8b0ce5118847f700bd96c32a12d99147f41cf07b4fc5a6a1988458f3d0bea6854d82f8473c2fe66d5e736e3ba8bfaa442d1dd81cfc44c1bbc8424937b239446e1bdbd81c8d624594c3d8698c39a48aba5b720fb0a088c662683078b8fcf81db14546da3409a035ac6e2c55f985d6518abf93496abc3fc90364d62cfc985f06f33c7f88750e6d4b86c72c5db3533606de0e6368c760db474884944b106a996bbfbf604b44412aed9ce439969be0e193c50571d3a40994f1188ff0b4d37b3cb7e76480dd320de671a39c69b2f2ad0545cb72aa4bbf34ccd9b4cc4435b27d482c546c6f228b206c05f51d7a1b4e12c91068c4bbbc478440ede0cf960c0b5c351b7ca5ed3577a8ec6dff01e1af6f1ba43383dbfc136e45e37526f49f59ef3c4bffbb1d3aae5deaed364f7f70d528432acaa882496fa108f89476cf8d4ae9d2dfa7d8a1ce19a223929340e78b27c0f508d4322353031b403d71a8b3c13c82d351296f36ad2dc840d00f388775013c045c05d9c9ce714d1792a5aad517f38bf041d059d38c1450063b36b23045d2f8a7072b1d1b2512d905667a0a7a4e860e9bdd069d2a437b530904894238c810f5405a727253de9bae0c9a2229bf2643ed8839446a475c0c88379e537c597c76f372937363927a778a2c2759d50166222f32b13a3e8708a3be3777ec3fde659e4025f8ab0c0a7a7287d992d7cfde9c986a0360bea9b535d4c87c00b833cefad77e4cdc0936f9de230b422dd59479494b9eec91a12c6d168d0e06330bce79edd153af8717180b29ab2efe5c63541f70284944cc23a3adb87ecd159da104ee500a91fdc6173f453bb16dbd11571016dc2507af7127603e08648c62373e2f3e76eb4e5c64991e8b26287d8de672a7bce069d2faabe2525bc216ae7cfeff031d44529b4a9a86fd76aca91095c8f7fef47a7c8531eb7647f8f3429f3b4bfb3de3e3dac0b22598610f3af31cdbcf67f273b0800cee5e0bb8b82e12a44f41479056151fc9c4dac303fe91c7c9c801a1b85386790f527886afe31af085f778ad21025e197666399049a2efcf04997fc071d3297609d990b76b6d56bfb4b1c62ebc097538784c9625c31a88dadd5d6e19472483ce52ba03c36eb7d71130f1b3d071fd2c3cf9a3315d13d7b9d5c2dae0e7d713ae9f4e9bdcdb84882db5cb9b035280ce3bbe3b125535e85e69ff020e037d719bfb5b67c71843bc2c7ab35a5a2b1059f2c64b41abe2f5035d5277aa6fd85e33ce9765289a5b20b6593983126ac436f2189208adfdc553649bca631fa61174ce91682e257bf27327cc904fcca32808de8a1c3b718d061e999afc0e82ddadf3aefe1f66ae12dc94ce0e3d0234eceb08ef6775ed8568f337d5872a7b2a36f4eb1ca849a0100a9434979012e1cd05feb3d2fd267f20177e95a2d5f6f3f6ec71832770896cb5536cd6ba8d1e43d90823c2f839e41fb6634c020b490804cb4ed4f0eee24c62c0b290016c202711117bb1eb72c49a7640e52d6755e92e613d574b89d1d8205b6faade70e41b7a770d39c71fc53cb1eec54647e9e6fffbb58e5e73d3301d67a6c29bd1ffea1d32317c03c6364c6c7279a843d14f3d9a4f86f5872fc08aa33e6438d34c0f6219eb617edd7ba6d7209feb15afb2742cdf0468826fcd18566241dc4d792068001d1a9878bc4815631e9bfa2bec9231b8637dfe0ddefb391fbab023eae3b5675ca2ff8871ba1cdd3225ea6ec212abfb20f436bb901a5f93c4cfd147e7314b4692979dd8f82836f70961fae5ebaa9092aa4439237696fcfda84d79abb10c8dc58d9518952f41e8af670b4b491fdaebcde6f4803a1fa96f1535a9baf00d156f04bb395cad530d956546040215269b7693fffde7f0d9121d693ef93daac8b96cdd4b6fd9b458b6056d8b30f296c1a83b2713d4eb7f118cf938f3efb2bbc855feb3563cbeaf67548c2fdca555e0f258c0951972f7108feb1c0e5bcf3ac533ab073f0714ac8078a958a1beb6e037086a305fe61befad3c5ec553ba85c0ee86f18b36fc5994d00485c14ee792217cefa3af08c76a1d1ca67b3ab9b15e7a03c2442f4e5d3316d85838ef542be606f1cecdd8b8c4af1aa9f8491850abc98a12081e3362545a784926545151ab56d87e44ad84afe15dfabc7f0a9d0488728f2061dd1db85e3b9406c69f9eda87c488eb39b72a26608aa49a73dd3597ad8671f95bfc6fbadc23f7b4270ab15f7daa964059014c458ce5b586e448f9b20d90a41220bacf0e2311dfb4f5d8c6f06665785ec1464e0eb34163d0a1c93a2ddd149da7ea2e7ff6b43117c487344ff271d70e691f15580afc5e4189fd3b447b1228071692825a2db54183088c40d68fd3f6467aaa60135c283675ead8c4322a79de114fe2e6da157b6193fce7037e8a8f6c748535cdda7135f70f232e7858f16b4f38e318c0a29926fa9c9a206db2872524d7224793946ce9adb90b6088f879f8694b3ec51adc3bd1b010988774f0ef704bb49fc2ba925f4258c2fab8f46da8b4ec3225f8651585cdfcf57379c7200023246dbb0cf30fd61bdc39a1e4c1d8be9537e872ceee1e87c95f12155590ba67bc98f5330b06f78fae13de87cf869d752e4ef27e71a547dfdc29beaeae1a3f0313087590bdb14d7a525d34564bf1d56e3de010296a4e0cdca4cbd793118978a138285dbd81d5fc65ea356c366ef749849b2cc81b7e8f1a1344590b959793a08a7f153e2db10916592b9c315d1baaa9158810a00e33173d5ecc02ebcda0dd31bd5b6b74d3f81d0eeeea66e0a488e03b727a42273ddb338031aef4a77677bba83496c12f2b3cd956bc0b1d0a2b853d7c0d5760e90bce4ed39c80962d31b5b929b62fd8a153a8f67ac356c05d4cf74cc7aa7531393b914ef18fb9d729c7807942553ad56922c8a76eddefea199cefb381d15e9d272fff3b426d0931b492d9d41604a49c29b640a7a6e336e4090b5f6de0663146abfe513e684ce9275c04dc21d848cc06cd372bf554293dd7e63db84b1ec875a328d76edb69abb5e664fbf5e9cc5d33c5cb4ae095756d6648654a7046202628a921b8b9f18fd888e1ea93411f56c62f326c221dcbd4a6f9f9dff0dd9046ae1a24275ee88117396b0a512735e19a107b006f61558225f09f2fd38c97da0b0fd1f8125e027713c220012b68d8d8d2ad4a89ac4652333e7d8fef7da5b2bc37ba5d9dd7c2ae96060cfd8f26976b5ccc4f039dda946be2abfcd2f58005f5e7e3a29541278339830bf524e9bd454f75d75717eab76e096cbf2787c8fa573fd86aada473b982e26b4194d78b85390aa23aa7f536c06fc394a82c1ac33d141ad24d0e6defdbeed11ce27893467d907f4f5d51b1e5e66db9e39daaa5ac2115f849c98c35ff2cc69c417b2225334b5f05d84c42ece25e34cb7db18487ef8749bccea862951b389a38ff1c3fcc795ebbda2baddcbf1ddd2dbfb1803eeb6769ba1ade94851522b0ddc764abb1cfb7a88e0a1d9359b690b4e51035fb6a979f619c180b50d7f08c29dab0625ecabb76c2e416107c43382fb59434fedcfef88c389960225d6eda12a52bd56d4782d69b8415385346b6d09ccb89cbc4f032a92fec424215725460a4ac0eaba94077ffbdc320e327a53f0e0a1420a14771f55b058e46258be851993e2892a28a9d6e1c2e3f7112e70d016ed39ef65b39274cb1e2b60a7687b09107df428ebd973028c248f4f3cd43897ce70e4383e44cdf3939f19374dd46fad382eb2177bbaa735681ce73a18f3b9e03629e21f56e0a1e6a0d3ed03a1287aaaadf14125e700eebbab63c81611dd3d24dfebed27841dfe35323d684bd28bb91de236a1b2e6b28fd6a65486c45dbf227618ce259dcd31c8de988b6f560da29e509fcde6723c079e1b150fb9a5686e569839dbbd60a6f25cfc51321c1332b3637a4ed", 0x2000, &(0x7f0000004a40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000400)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) ioctl$sock_SIOCETHTOOL(r2, 0x80086601, 0x0) 12:52:08 executing program 1: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r0, &(0x7f00000000c0)=ANY=[], 0x208e24b) socketpair$tipc(0x1e, 0x2, 0x0, &(0x7f0000000040)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r1, 0x8912, 0x400308) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r0, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cgroup.controllers\x00', 0xb00000000065808, 0x0) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$ethtool(&(0x7f0000000540), 0xffffffffffffffff) sendmsg$ETHTOOL_MSG_COALESCE_SET(0xffffffffffffffff, &(0x7f0000000640)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000000)={0x34, r4, 0x401, 0x0, 0x0, {}, [@ETHTOOL_A_COALESCE_HEADER={0x18, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'netdevsim0\x00'}]}, @ETHTOOL_A_COALESCE_PKT_RATE_LOW={0x8}]}, 0x34}}, 0x0) sendfile(r3, r2, 0x0, 0xffffffff) 12:52:08 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f000099e000)={0x2, 0x4e20, @local}, 0x10) sendto$inet(r0, &(0x7f0000000140), 0xffffffffffffff58, 0x20008005, &(0x7f0000000100)={0x2, 0x4e20}, 0x10) r1 = socket$packet(0x11, 0xa, 0x300) setsockopt$SO_ATTACH_FILTER(r1, 0x1, 0x1a, &(0x7f0000000040)={0x2, &(0x7f0000000100)=[{0x28, 0x0, 0x0, 0xfffff034}, {0x80000006, 0x0, 0x0, 0x20}]}, 0x8) r2 = creat(&(0x7f0000000000)='./file0\x00', 0xd) bind$packet(r2, &(0x7f0000000080)={0x11, 0xf5, 0x0, 0x1, 0x1f, 0x6, @local}, 0x14) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c03, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x0, 0x5}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) setsockopt$inet_tcp_TCP_MD5SIG(0xffffffffffffffff, 0x6, 0xe, &(0x7f00000002c0)={@in6={{0xa, 0x4e23, 0x74, @dev={0xfe, 0x80, '\x00', 0x2f}, 0x200}}, 0x0, 0x0, 0x4d, 0x0, "2a6d9df8ff129e94f2248a6b34db3136ae98475c77e7223b86048369ee119bdf869dddb1cdeb508a62c1de8d1a59676cc8b4d63b519ff468b9c231c4c7749d12129702d9e379b09ba528441e6f6dd9bd"}, 0xd8) recvfrom(r0, &(0x7f0000000480)=""/110, 0xfffffe32, 0x734, 0x0, 0xffffffffffffff39) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000280)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000000240)={&(0x7f0000000180)=ANY=[@ANYRES64=r1, @ANYRESHEX], 0x64}}, 0x8880) 12:52:08 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$inet6(0xa, 0x802, 0x0) connect$inet6(r0, &(0x7f0000000080)={0xa, 0x0, 0x0, @dev={0xfe, 0x80, '\x00', 0x10}, 0x4}, 0x1c) sendmmsg(r0, &(0x7f0000002cc0), 0x1a3, 0x0) 12:52:08 executing program 0: perf_event_open(&(0x7f00000012c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getpid() r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) r1 = socket$inet_udp(0x2, 0x2, 0x0) write$binfmt_misc(0xffffffffffffffff, 0x0, 0x30) perf_event_open(&(0x7f0000000300)={0x0, 0x80, 0x1e, 0x7, 0xb5, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x37e, 0x2, @perf_bp={&(0x7f0000000000), 0x3}, 0x50008, 0x9, 0x4, 0x0, 0x7, 0x3, 0x8, 0x0, 0x26007f6e, 0x0, 0x6}, r0, 0x0, 0xffffffffffffffff, 0x2) setsockopt$SO_BINDTODEVICE_wg(r1, 0x1, 0x19, &(0x7f00000000c0)='wg1\x00', 0x4) setsockopt$sock_int(r1, 0x1, 0x6, &(0x7f0000000140)=0x32, 0x4) connect$inet(r1, &(0x7f00000002c0)={0x2, 0x0, @broadcast}, 0x10) sendmmsg(r1, &(0x7f00000038c0), 0x4000000000000a8, 0x0) socket$inet_udp(0x2, 0x2, 0x0) 12:52:08 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$inet6(0xa, 0x802, 0x0) connect$inet6(r0, &(0x7f0000000080)={0xa, 0x0, 0x0, @dev={0xfe, 0x80, '\x00', 0x10}, 0x4}, 0x1c) sendmmsg(r0, &(0x7f0000002cc0), 0x1a3, 0x0) [ 676.391290][ T36] audit: type=1804 audit(1630587128.773:258): pid=5169 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/531/cgroup.controllers" dev="sda1" ino=15004 res=1 errno=0 12:52:08 executing program 0: perf_event_open(&(0x7f00000012c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getpid() r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) r1 = socket$inet_udp(0x2, 0x2, 0x0) write$binfmt_misc(0xffffffffffffffff, 0x0, 0x30) perf_event_open(&(0x7f0000000300)={0x0, 0x80, 0x1e, 0x7, 0xb5, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x37e, 0x2, @perf_bp={&(0x7f0000000000), 0x3}, 0x50008, 0x9, 0x4, 0x0, 0x7, 0x3, 0x8, 0x0, 0x26007f6e, 0x0, 0x6}, r0, 0x0, 0xffffffffffffffff, 0x2) setsockopt$SO_BINDTODEVICE_wg(r1, 0x1, 0x19, &(0x7f00000000c0)='wg1\x00', 0x4) setsockopt$sock_int(r1, 0x1, 0x6, &(0x7f0000000140)=0x32, 0x4) connect$inet(r1, &(0x7f00000002c0)={0x2, 0x0, @broadcast}, 0x10) sendmmsg(r1, &(0x7f00000038c0), 0x4000000000000a8, 0x0) socket$inet_udp(0x2, 0x2, 0x0) 12:52:08 executing program 2: pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) openat$procfs(0xffffffffffffff9c, &(0x7f00000000c0)='/proc/timer_list\x00', 0x0, 0x0) perf_event_open$cgroup(&(0x7f0000000340)={0x3, 0x80, 0x3, 0xa1, 0x20, 0x3, 0x0, 0x100, 0x40, 0x4, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x9, 0x0, @perf_bp={&(0x7f0000000280), 0x4}, 0x844a0, 0x0, 0x0, 0x6, 0x0, 0x0, 0xfff, 0x0, 0x200}, 0xffffffffffffffff, 0x4, 0xffffffffffffffff, 0x0) io_submit(0x0, 0x4, &(0x7f0000005e00)=[&(0x7f0000000700)={0x0, 0x0, 0x0, 0x0, 0x4, r0, 0x0, 0x0, 0x0, 0x0, 0x2}, &(0x7f0000000ac0)={0x0, 0x0, 0x0, 0x7, 0xfd9, r1, &(0x7f0000001c80)}, &(0x7f0000001d40)={0x0, 0x0, 0x0, 0x5, 0x0, r1, &(0x7f0000004c40)="da9e0ad49e0fc4291ce1e10c1f6eabe8cf1043290ceb25d5a420a54137e42782e49b76f563c757bad9b1d2d8a9e5080d70b5301932f37831f3f2ce0f5fb839189fee583df04fd16d3b0a26e2eb5cf5de4003fb1be5b9953912e401b3b29aa26cb20bcebce0e1ec9a6d449dd4f3dab5603e0d2bb970efbb317b8c21680d4ab02ed5da56a86e2bbd64a21a55249724ad9780a3cb6fb8a4f84db9a34669db66d5e267b4ec880247eae5fa6dc511933d0f6be7e55749933a3e011ab102cd3823a2cfcf4a5784cd06947d2867a77039cd410e66adc8621723775451f75c2dff9647a83e90298b7df449d4ebc1447d9f6657999f939637de139f0b3719dee3457c95f24749c1f6cfa001011b5033d838ea3b314ce44efffd80aa568a023dc8ec1b37a2f4ad68b9c4df1b47779fb5f3e4277f041462c3bdb9d843e8345c1620969016e4f8d8c0ee8604dd8018a5ffca5be3f39446afca403c3c28877194fe671dbf44faded797b01d02b5a7ce125a8b2ddab8ece932a3b3aef0b3497f1c62be4d4c8fdaaf92e6c63e9b9aeabb6fcb7c2bef7fe99ce2bdb3bc5de9d158907c675437504f9c26cc6fb9588001f0622c2d28207e5d657110edd555dbadf5c739055d935cfb6f26738115969bce8c751da95f22fb5770d3b5f228e6d95984359078d14b012348c5d79ffe544df79d659bd38ec1e40209b9a4676d7db40c9b76b52a3907dcf0d996637dc60ae89a070e357414dc50db463f0b17fb04bec4612ba36cf1a26096b856353974b75024e2e14d5cf95dd3d9070a0a1eafc166238e6e4104d84158675b69c6273748eb57271d250a0c16ba666822b1e5e02a91bb17fdf921f37d74cd33508369500066456952a11ed6c9a7140a2101a39b43d85ac873549270545d9c886028067b05aa8cfa52f40ba4565aff8fdfab19bab7cc8ddc897e2a3564071fd8f51fae028dca24db7e7268c44a1591539841b1294f9292e5f215dec8ca8d3168332df0cec1ef49f2939b2de013f49a089bdfe471d0c8175aaede2af31050d031c67b231ee54a7c74da59289d7ee381c613348f43f6a1069be3ce773a63a44cb7f641a6ae5863af79608848674973c4d531dff6b7050c034c0adb6d97b6ac1f269dc4d81d9081e62c089cdc3a33b1c64380b94d5ceb0ba21c3e0e4df34005126930958713f99652e4d3ece16a2fdaf8fbf2a1a53ad654227005006a86a10802af2a188085e12bad0c4bd6320b2eaec0b2824f81e9fa57f048a71b8e390e6b9cc272dac583b78a50f97d6638baef5971ff4b1de1debfeedfe910728b9bba3a52d850ce321d9738e532dc54d90d28f94dcea2355cea2b153cb9dae690270844f368eb485fb4dff660a5407e43b980b676630ce7dce0820a6f655451e97a6feda32cef611e7f0bbb8386252a091a73f9ecb2ef7a388107b6a30cf041ae60edce7fa79283ede8c3f79269c811f697b8c109bdc7e316fb8a055876b366e6dcc344e2eb48b2f48d53d3997969b33b90920e1cf3db90ecbff7e9061cbd806d283b56f98b1b20b7a1aae3a907b7119c0ed7430ecb0e970304c80531c89afe25e94720b48f5e6f67b022705b31a67a1547d67d4f41ba41148443a68dd9afb8c7d56bc46717e7bbc4383a1e39d2950414eb0de772a6cc918a87eadb18be3b823f7a1357b5dbc672542aca1615fc0e1a7fa15620a3748935ae5cae5250e22cfd475781f62c9e520c855c50707e8e5af8bc59cf1d4f156a8fe4a28d39bfd4f9d3ee97161d3fd68b1262e28b0f04c15a5ff53fd46e7c83d8081cd64b99980d0550606e2292d1e1d29d7dc54c2c92227f5906f8757e2218e944ac3d7a56dd857fa7d9c025e9293debb7b2d8ebd3f7eb12e046f9d05e4c7ecb2d24c5556a2d475794a74be0623fe36ffeafd20a745de075e51eec0bbc1c0dbfab64ae43b07f8cd52e4b00b324fa040db4465c68777f9251e3656e5c0bf5e56e55276dbc26bc660d1411ccf3f6a3ed06935fa4052ad395758cf2fa863208e8d03417b044dc3b77e0e2f755f01f51a33c53a5831d3cbfecab1dec6f540b52a77c6bad2b7eed861bfd79a121aa59d0cd8d09bb90885c5e9cb95f09750642a8aeeed3f580b441b925a9e831cbc56cdfc1ef2f129c2cdd323c3b328dddf0881c8af46df121d06af81533e5fbb07a2747cc510b25b30e30cc7461de5d8867706174172e88a9da88e66c080f800f3c69e70d6048f98b33dbfc1e03c2605a779b4d3624c79734e25a394c3dfc5bb5e6748b3ce0e9ac2f81d9f1527261af1a45cd152f5ea77fb789ad814e2223450bbb8b64af90ad9428a6d619479ecbc604c1bde2c1e824b0d161c0ee32f837bf29b33ff73e9763e27a40569f261948a4a4da10e97e7df252578e0c469016e3b42e5180be230888d5c294ede4f2897df1cf99feeb5f3b40586d894f055aead006348f099ab117e41bcf9bda1e2d9512c1779ff99b8b0fa28dff3715350e54803475396d598f69b30c2f9fed134e2abed33fb23812ab537ab6fc77459c6ebe7baca135a563e3fd4897bb37e6670730b38751d11e9cd0020067d4065e13f872a836df7f940eb3809c8bd91a59164065c569502c8b7f519c45eb86c5f2aff5f1f2597777b672d84886a92344e71b93ab333c2f2463f86444fcbff7c919e6f6a2d2cfd1ad17afe7ccdb6dcbe41ccf00a8281cbb8adda34df43dea0f7e835b99ee788ceceeebfacd789afc9ca559ac00133f319088ffbec26bbc2937e56e9ef7bac19385061af4597d2dc45ccbebecbc7634cfbfeb6e8d7ecf6c361972137ab921d57ea5f39403f813829cc0e408e1563d503f634085ee09063e51d8f658402b41a7deb56d43e6", 0x7e0, 0x8, 0x0, 0x7}, 0x0]) setsockopt$SO_ATTACH_FILTER(0xffffffffffffffff, 0x1, 0x1a, 0x0, 0x0) r2 = socket$inet_udp(0x2, 0x2, 0x0) close(r2) socket$inet_icmp_raw(0x2, 0x3, 0x1) write$binfmt_misc(r1, &(0x7f0000000140)=ANY=[], 0x4240a2a0) perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50a, 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, 0x4, 0x0, @perf_bp={0x0}}, 0x0, 0xfbffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_MODIFY_ATTRIBUTES(0xffffffffffffffff, 0x4008240b, &(0x7f0000000100)={0x0, 0x80, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3ff, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x401, 0x0, @perf_config_ext, 0x10800, 0x0, 0xff, 0x0, 0x0, 0x2, 0x0, 0x0, 0x7, 0x0, 0x5}) bind$inet(r2, &(0x7f00000001c0)={0x2, 0x0, @local}, 0x10) connect$inet(r2, &(0x7f0000000040)={0x2, 0x0, @multicast2}, 0x10) splice(r0, 0x0, r2, 0x0, 0x2ffff, 0x0) recvmmsg$unix(0xffffffffffffffff, &(0x7f0000004a40)=[{{&(0x7f0000000280), 0x6e, &(0x7f0000000540)=[{&(0x7f0000000400)=""/95, 0x5f}, {0x0}], 0x2, 0x0, 0x18}}, {{&(0x7f00000005c0), 0x6e, 0x0, 0x0, &(0x7f0000000ac0)}}, {{0x0, 0x0, &(0x7f0000001d80)=[{0x0}, {&(0x7f0000001c40)=""/2, 0x2}], 0x2}}, {{&(0x7f0000002f00)=@abs, 0x6e, 0x0}}, {{&(0x7f0000003180)=@abs, 0x6e, &(0x7f0000003280)=[{0x0}], 0x1}}, {{&(0x7f00000032c0), 0x6e, 0x0}}], 0x6, 0x40001042, 0x0) perf_event_open(&(0x7f0000000200)={0x0, 0x80, 0x0, 0xa0, 0x1f, 0x35, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x2, @perf_bp={&(0x7f0000000180)}, 0x0, 0xff, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xafa, 0x0, 0x401}, 0x0, 0x0, 0xffffffffffffffff, 0x9) 12:52:08 executing program 4: r0 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000000080)='net/softnet_stat\x00') read$usbmon(r0, &(0x7f00000000c0)=""/90, 0x5a) 12:52:09 executing program 4: r0 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000000080)='net/softnet_stat\x00') read$usbmon(r0, &(0x7f00000000c0)=""/90, 0x5a) 12:52:09 executing program 0: perf_event_open(&(0x7f00000012c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getpid() r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) r1 = socket$inet_udp(0x2, 0x2, 0x0) write$binfmt_misc(0xffffffffffffffff, 0x0, 0x30) perf_event_open(&(0x7f0000000300)={0x0, 0x80, 0x1e, 0x7, 0xb5, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x37e, 0x2, @perf_bp={&(0x7f0000000000), 0x3}, 0x50008, 0x9, 0x4, 0x0, 0x7, 0x3, 0x8, 0x0, 0x26007f6e, 0x0, 0x6}, r0, 0x0, 0xffffffffffffffff, 0x2) setsockopt$SO_BINDTODEVICE_wg(r1, 0x1, 0x19, &(0x7f00000000c0)='wg1\x00', 0x4) setsockopt$sock_int(r1, 0x1, 0x6, &(0x7f0000000140)=0x32, 0x4) connect$inet(r1, &(0x7f00000002c0)={0x2, 0x0, @broadcast}, 0x10) sendmmsg(r1, &(0x7f00000038c0), 0x4000000000000a8, 0x0) socket$inet_udp(0x2, 0x2, 0x0) 12:52:09 executing program 4: r0 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000000080)='net/softnet_stat\x00') read$usbmon(r0, &(0x7f00000000c0)=""/90, 0x5a) 12:52:09 executing program 5: openat(0xffffffffffffff9c, &(0x7f000000c380)='./file0\x00', 0x40, 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000100)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000100000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000103c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000000040)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000e3c0)="000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba045abcd5dfc67d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000209bfd66eea210560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001354c4b600", 0x2000, &(0x7f00000062c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006340)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) r2 = openat(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x1c1401, 0x0) syz_fuse_handle_req(r0, &(0x7f0000002140)="d23d5663422096c70d65f08cdbf2314bf6bb40a9cacb2aad6349ea9ea6e7cff01ca62558676c93a258ab27eb5f462d1e8ba7015a3deee2ffe25fe6775ea395c2c1b92044d5c571dcfae5eae8af17d4cf05e68d37c0b13d326813f143873cb8c16805b63ed358e78ac9b6efc8101d083ffa99dced434133fa34bf2865b1e2b71325bd359fa62d4b01bbe862c9a5bdabe4b2ee29fd44d897ea6ffd89804b24093639638683187882addfb562eaf3a723b5e71aa58b94b67bd40771243806ffee7b10e1b753437de8cbc2d50dc6450247e2f02d4b2f91044f94ff4ab56878872347c63444d26619b34b2df31a993640b18e802d4465f513c73683f766d5986bf496a6b3272cfc91b97c708240c4dd727bc3b5752ba6b095a30358674c212c8359533cc3a0412154f8f3ff37b2140686787ab49cf6ae3275ab7a4edf8af266ff97ea4f134531d43e8399eb39e5f22941e8b6602aa8be87b74cb66ba58d4fe6d91d3055a8c2a1ddb6271bb21bc8607f06b1e215d113001fe98682f17dcc1a1d95e7f1d1009cf07673eecad819dbd57779b6e08f70b2fdbb10a50ee843917d881edbf66804750df08d97fc060b6c541ecfeae87fc288de6113e89360a193f32847d513463c72a907f8beeb3917c786a4f763db05a79b41184d514bd4db14415fbd99af35e46216f660c7d5d847e6efb03316806cec599b113df79c99f053eb4e11d3e2ee20d17804bc883effde18daf977dc594a137109e9108cf759cc677c3570749b7cf275a954c1d53bb0d5761136e781b4cc2d07183ae5389016f6c21706e3a93cc264b5a57ef8d064e4204888a7f73695bacf073788a5deebc1204cf8d5be2fbbf3b78debdf1e7e591c5c326842172413eb96528d6c08638a659cb96e484ef6ce893b2a7b6db28cdf2d18682b614bb47298d25adade5873d12abe9139780c3b7799b0b487c32ded9ff4d22c40945deee1dcf63c36bf2ec00010f84ef391d79053ed36005b37489eb24a506aa3113186d0ac2329b6eb3af2f3ab617c78695b0a89993b47416e634e0d3337a4bafe0aa14b9d5ee1a7ef8d4b37d362c73113b96950e3f270721394ebd651fcdb469272c6bafc94ac652e809090af23171fdae8f2ed3a0167b486d1dc4fcc6692ad7f7c5265c8c82107aea456d485653eef995a2f48e911ff6d31ee316683318ff957b8722a6a07caabb8452e535b4bf6e1f49c8ddd49e1fc04c841224e6d02e52a6a5082e4311e5d3e808321d7c0687d5feb9c6b61d78cd873e265fb62c217b1c0f5c0c9aa6a7fe95cf1182ddbbeb80bce2bf9350485de032f1862f25e0a10b1ba7b61c29ba2426e3c3e0fe3584581221219b18d448a9f9719ece64a721bd858cdfa43b9a52401371f45bdcb8f2f166a8839f82258d04913a02ada05ca0d8636f3f11f3b99f94c38035213723651c4b42dd9d9010950136cd235868a52423fb6e600fea1e9126bd1d185fc274b78e4f0048d67850df76f3eb35ded6cc9a777aabb163dc4f795d6427f01d81cb02ae1a7f26a182c87492bdf186775792e1c6c54ee22b0da9b3543ac11ab288aca57d71dde0a2a9a614b3b80ce6741832d327325f058d1f6d8f1bbeae51554397b1ad47f1b9adfecffd6a6c8b1ff56bed2ac377ab4466c51388edea412581af51259842eb7a49ffc8c0f20246855c17c11fc0741b2c6628ff0d38d158cd5f74eb37f57088679aa1db6522f2e4e5abd69ffb578e9652a3ec578dbdc2d04225071af0fd547a11cf01243e14e7ca4d2d29df9a89741ccd4ee6bba2b2b24f2f99eab30899ec0af002d97d549aed4fc303fb366097d05498ac8badeff8c4a2b00f5869a4a913348bd91518f2013c7081a24ae719be388023514383230212529ee50e1172b23ef141720c65d32dd17b1e250e650e8ce9ba5fc0c63c9e62bd2cea5b3ac4d91e49e68a78c00bd8da5b5c0a596ffdbc7321daf50d1e596f6f7a1af4ff8d133514a93ffd84bbf30da586f71b6f1a305e2ad81fe97ec44b4c8f8ad7656562b4437ea26130e76b53a498e4cd5018a817944e87d867016c96693dacbddad8414d75cf2e9364f543fd8d2cf91decef745bbb6658273d7fc8f4ed5b06daed17c942a6832d7d501959f9c04b34f0f691db333c7c0953c61e59b7cc3cbab6dbdffad5bb1b3666dc50af3f0992f5b3c54ecfdb6403a593c10c2c83918b8eb130c1498f9e82c901efb170c447e97a637124b67a273a35f2d8b7737769058330dc6e5b4dd87066cc2fa576d087c44c15003f41aee9e6216e13353bac0a96be06ac4558737159cfb757ffe15b4dd52fd07552f05ee8c47ca9f67497613295f773bbccde278c0b736ab17d6dfdc0534abff9cbbc278aafc05a93d9c4354061cd77149d3a2cde6899fec16c4748de0a71015ecd08547b08cd949c4e811ea7ef59ff8fe8b54d85061c688b10a7715a214a9331e31b2474b82e24108462d3193bcb5a6330773609035801c53c3fc65f49d616d05904e4061e3e71e4253cd2e7aa9c6a82a5f300cb8f57839db5e72aa9de733012e3a11a963f3662dcf54fac77dafbb3033a2a07d0e49c1d2e62e781b69460746d075144d71d291ba5dc090e721ab9bc88784fa7677ba447b1e9dbb18c50dfd06df63de5c75c9d240b066119834a036bbeeaf24a48c5f11160eca28046f7e6811a978bb90b51ae6853d3adc1541277efefcdbca4f80c08f8830b9d89626f16891606a3f7e5b48b96bc0500910fd2b5e994f7dd2ed9b9a101dca04fa76311ecebac12f238a9c822f9cf87a8d5bb9b376b6c8981d162c4ef580d5c5a69f9033b6458ffd671c0b6e11175a97a16e0d43c3f82bf0640391de81bb8dc7760789032d6c98d70d550d123318099778c45ea214b8c430d4862b88f7f594f78e16bcc77ec732acd874f5367ce850a5c5068569c5e18543116e9c4c2ab6810e2dcc970f8d8a28795e56e290bd98cf767c4dcbd7f5d9c264a07d8049a7934ffd5c949b70ba05e63bb8c1370df7a561b91a7ee3707aba058cbf9010dc36984aa456abc78fdd8ba7ec6565dee69b22d9d70441bd5b9174264171a4bd4539e19d497f5aade75e914a647e3ef3dfed1b00672f69ee5afe2e771548c784c80ab4c32d588554bf7c618d6a6c7150b27b447085c4a4e21288930f4867382798f8ae9a0e2e6badb6bbcbe6ce87aa5df7ee5cca4cd8cfff076f7213717627d4421a29ed3a73a7a2b84260b3ee680f009788be57d01b7d246174773f3ba5f4deacfe49dc7e25586c6eb700884978851305d1bbdea6e20c0c5cbf7d52878429d5bcbf2df3c8ba671a2e9de412378b5df07e8e32fcae40c1894cb5c0919bdaef8b62ad105ccbdb71eb2d45fa6911a502606767e9e61c2bd73e6119e564164770b7af47d204d364b8661671a9f417362284760905ec456bd45a82bf112d486973afa0b9825052f26e87c4a161ea3a8fe3764eff96a22d31a00648b0e51545daf5f9375a0cb8bb7ff576eb60dd915672be915708bb1ad5c58d258a7b6a10b20ef8d061c9890f998a34224a23320bcbd91d520e1e35e877246f922cb5b7a7b01e076aed801e16a2e3ffc16799cfdd52efd1708dadda79f64a71d2015192dd86db04a910b453c251464d9cf21b35a663c541760e48f7c36ad9df0ce2248098a55fa5d40886a7808445733fc2a24e7bb9a38f97e6d319c49436c8abdd26c9d4773b1c3c71391bf973b6c9c4b7b84e979ef0e701be7bb6a8d4903a13ffe5092b3d97d18a575dfce07433e89ebd284b913d8a3da634989777c9d9e9222bf8f7ec0685d26fae2c8b141a1102e3e70ce78a8c9e4b046c3888f8cda0be467d9e64c58bb80f2c1de14f94ffc2cc10c14e9621cd071103f0ddbcc5d3396266f0a6666a51e7829ac8ef535f71808c1c031522577618edde6b84a36013da478fb3bf49747c6f96628cf0bb7f67d2d157f0bdff1c25ef11e758088085460bd259bf9510e4251a74997a427107d27c9e314e62dffc4af72cb7245424d987f5285f25852b7e0d9bedda6ebce305f2d58695c7ad0a4e204fbc9cc26550f35854447aae35b5c0f1e177d1b10fc153383bd980ee3dd9b73d873bb4c53091eb15f0da2b392ef8893c92cf9400085734ce2dfca8cb006d52a3c2aad65b133ba2c38040445e3a7bd316665ffa65628b5f3231f317bf100a2e78637551fde1283955db9b4f99a89e82647c29aeb17c9553d43e8cec8b7707756a8d18769406c86cbfd7002d29a6b2ad693dbec14ac2e18f2a8b9f79d8999b7da1736bf8a4cedc98ca46da0fdb14436bc0eac78d98eed5f65382610c3114aa840360e5e4622292e8b008d81a08d6d344f71be8484164c13b053b82beb99d276756e4abcca2365d46cd5fa229acb973920b43c78e81ad63bd63bc1873835890f6572aeefbf8a4a55b2a6267b34b7e54bb6c28b9aa1ce07bf3d65715ac147e1208b0c351057f8b89b89daa0edad2811b5f9341304c6918f3e331628dcc476fd45b4f7e09dedcf8cbc10dad39decd4b9913b24896b35c0293c0e836c003e7acb53576a5fd46ce7f271f96fbddd13e88e5826a94a0e78b18da9bef1fa05208e8403d734c7ee82a682569e40e518bd195a2450d3c1870d390e73ca0a775bd567538ef37a6e4f359e13aab6913adcb71cf86a10373e21a252fe3f7aacd2ac21cc39ed0090cef33c620e6a29611c8dfaa95da353c138d02c6b2b692aa7c189a689ff7a04b091ed925fe29947568a172641f07784ed87f73bcf595cec65a7ba53fcf11eaaaf9223312250e7798aa4bcb32cccc0d65ed8d7aecb3230d2dfbba58704b9b7aab7e0f11b39c66c1ffa8b1d54125623822245dcc48f0935b343cdc5d3db17d6557bff954a18ef17ad95ac2b35272ede2f73d59789bc0fdbd979443008bd89ab9626ee55819acf5ec152db16f389d6da716ee77af568fd2605b6f7bcb0f183f2209a64965181d04f08cca4ada8000717dd043e07ef0819df397e0b71d8c3fe84607b81273830f32abbde0ecd4f7d1484e5697a04a55e4416ddc5d2b6ddc7cfefe0579c5e0fb4d6938d3451cc36abb46034c33bba0b05b74bae022fd5456b20b45c3558921098f1e7669aaaa42411a4c60de0aca689c078e542015e17a0cff9da8ecbad12341998d6014a16957b9833ad1d47186ba21e81b61fafab77ce0dd51d06e4bd2f09d7e9cd3150615c22e4490929594c7517574d86bfd81666a72698cb91ccdf0ff02a53761bbd6668817b14389a81e4d7a02054b5436f1cd450be369450de638511c401b281ffe478e7fe09407e11c19013994a0cc442bd9c5ed4aa51d6a67f4f73bdf47700a694a4e4c2a78d3643af3b27d0b0036531a969149555cc0fbda22bd76bc43aaa0d1be846925529a8f9e6b6e7617cf1ae17de3d381ad06bff454de6ec97c04d868b92e69f5c2ff6893a56050f8d6e95857739725abaaf8ba50cb1be509d5c558c932aecfeaf9f71881dbc65db1f0cbbe1ddf6800b8790a8407c3fe244ad6b2f767cee1534993a1a01ccfd4f6522490382e3e64861b585443ddc3a54dda078ab273c2d96212ba138ee3fb4d99a2541146502ea07d6226e4dc9bb36ded4f9f094ed39ff4cb8a7ae1da929b41adf59774febb367ba657289bee82ca52609f117de4ff82bd0012d8f0ce339b612505404e4923da56b8da1a5a3f86f02dcc9e9f569f74f5001aeb5082c841c8333ce8cf3b7cade6c687ffca90cf925e8f94406f86d99015cde904373753fd5553bd7e747ada3fe3d24a5d03deb50974f7841b6c03e44793ed1c70ee541cae6c0334fe9cdc5f47e4853d8135e4090fdd0a796dfcc67622a14d18251d28c9fe30490c67a6c95d38804f3a0fd23fffd0934f496ce49c899f0ab35fd101c8611ca80d53088c448f55933bbecf4892a619e1afd044bb5c637d4b02ce41615ba077986456a84ec26bd471172f151dffd7e46d1c5628c1ca7af1fa71e298af87c3e6661c09f4ddf32a63b51900ca2723cd9463bf824683f8899f258e342992f9706009857348bb7277deb7fe9ddd63a85f1a068bfea4a2146450399c85fc6aadf0d34d42a341770b5420db5f738377099f9632c735e21f30f652146fdd39435439ede0d8919a8cc4bccb5d5ad9cc6d7c453936a66ffd999c9ad98772512bf20bc0d123763019bb38480f2058db66160bbf84a2633f14460ce7c99232d168f9084943028f88846e331990b933976d81de24a420eec0c8ab51692ef705b960626dcf9e3c02c5613cff7d0683de340dd7c0bdb5fa17d7d00d64ad4884fd3080cfb1254b7932a8a62d14b3d71570ae793a1bab6b927e6d2c6ea78b9e834101290c3581b2aacbce47f480e85959fb295ba3338e86e48a66e0a7d55bf8450863946cc7409c695a11a7d6bb26c803aba98c7dd6d73405565f7bd36de63ab71a1158f0f28c5a679f2e53b5e86492f1b7feace14649a3413a91434ac5dff314a6e9ee65519b3bd7dfbdcd561dec2dcebac705d532d6043f4078a31770c43f885e6db1bd3cb0e09b5bacb04ce3c07430404c6c853191b1feef14d0705aad3d103b432be9de4d87b7df4c0e4fc2bace901a329cf8c99ba7d296d0f80a48c32f5ea337cea5d5db79f7dd6c354285904d004262bc3e17774395c11e3165214610f49f4e2362f46e29b82f1573ad6dac92cec27f6664d8c00256f3a0a46ca33755242d95cca10419dcb59fe514f5cbe00bedbe50d4690c061402f438b2e37d20f30db9cc2a24045037943892f225362bee3303d8ac2612e0224c399ecd03393971cbd2ec0ae81e4d70995cffae3d3e425751e72f2e58c7d6f977bec8f01e2fda5f04d350ad33a42dafbf4a2e6f367429940d1571111133e6fffa5a2640c6e0bd11bb02e459ff4592e089b38833168f4f7b3d263bd1591c56b66c9aff4ec4b033f910b63cb61a7505def3a2308cdbc47b899d84bfbb358874804fedc16b3f4615ce3d6e5376f031b77b8064315cbcc7132189376fa44beb0f122066db05d2dd5f18c0526d54c8ffe89abac6dad96aad316769cf06642e2278108df8445b8094363ec59f2a796eae1bc292de770fd88634f188bc9b17aac5a83aca766790655ff9d710a61eb24138aa4217c75574b26184a3d142c7a4ebe1b94b4e6c09a056d27fafeb6483a75d4b5e5a54f4dfcce1b7104ee1794c2726948ae0ee07886d55c9dcc59852103c64d97a81c44506bd700789335a2e2ef3e1c22b1239262ad545926d6e9d71a9ddd851d04f590c01fcfceda8c1bc658f622fd67a9737e82e5ca1fcc906964e7e2cc3e577bd569bedb537284324b00f621efd6319461885e57b51bbb8902f8772240dd1c44c5f0cbb18892b73e388047428a8c736f6bbf90749cd80069b7ff6e82de0fcccaa6ecc1627e893518f580cbef3865ab0e789cf964b3417ea41a3adfaef437ca92fefd907941e3a63c758f73c23420a56ed5962d782579bb59294bf8b41ed863f9f1837acaa16f6adf91973635dcab97c400435f9bb96f872784220652998590b727b63dfb60d02654d716bcae87f1d4eb44df5994c70180c357c7746ee2b4071407fd41b7d3936d5ca84e9277a486aee7d75fdf8ea3a90fa97ed275953f832fac04acc184f0c7080a072751dcff0b8741c88f8d90536355e7394a87078807c4714f337976c9ae3531beec57dd6f49adfee7c1e8b0ce5118847f700bd96c32a12d99147f41cf07b4fc5a6a1988458f3d0bea6854d82f8473c2fe66d5e736e3ba8bfaa442d1dd81cfc44c1bbc8424937b239446e1bdbd81c8d624594c3d8698c39a48aba5b720fb0a088c662683078b8fcf81db14546da3409a035ac6e2c55f985d6518abf93496abc3fc90364d62cfc985f06f33c7f88750e6d4b86c72c5db3533606de0e6368c760db474884944b106a996bbfbf604b44412aed9ce439969be0e193c50571d3a40994f1188ff0b4d37b3cb7e76480dd320de671a39c69b2f2ad0545cb72aa4bbf34ccd9b4cc4435b27d482c546c6f228b206c05f51d7a1b4e12c91068c4bbbc478440ede0cf960c0b5c351b7ca5ed3577a8ec6dff01e1af6f1ba43383dbfc136e45e37526f49f59ef3c4bffbb1d3aae5deaed364f7f70d528432acaa882496fa108f89476cf8d4ae9d2dfa7d8a1ce19a223929340e78b27c0f508d4322353031b403d71a8b3c13c82d351296f36ad2dc840d00f388775013c045c05d9c9ce714d1792a5aad517f38bf041d059d38c1450063b36b23045d2f8a7072b1d1b2512d905667a0a7a4e860e9bdd069d2a437b530904894238c810f5405a727253de9bae0c9a2229bf2643ed8839446a475c0c88379e537c597c76f372937363927a778a2c2759d50166222f32b13a3e8708a3be3777ec3fde659e4025f8ab0c0a7a7287d992d7cfde9c986a0360bea9b535d4c87c00b833cefad77e4cdc0936f9de230b422dd59479494b9eec91a12c6d168d0e06330bce79edd153af8717180b29ab2efe5c63541f70284944cc23a3adb87ecd159da104ee500a91fdc6173f453bb16dbd11571016dc2507af7127603e08648c62373e2f3e76eb4e5c64991e8b26287d8de672a7bce069d2faabe2525bc216ae7cfeff031d44529b4a9a86fd76aca91095c8f7fef47a7c8531eb7647f8f3429f3b4bfb3de3e3dac0b22598610f3af31cdbcf67f273b0800cee5e0bb8b82e12a44f41479056151fc9c4dac303fe91c7c9c801a1b85386790f527886afe31af085f778ad21025e197666399049a2efcf04997fc071d3297609d990b76b6d56bfb4b1c62ebc097538784c9625c31a88dadd5d6e19472483ce52ba03c36eb7d71130f1b3d071fd2c3cf9a3315d13d7b9d5c2dae0e7d713ae9f4e9bdcdb84882db5cb9b035280ce3bbe3b125535e85e69ff020e037d719bfb5b67c71843bc2c7ab35a5a2b1059f2c64b41abe2f5035d5277aa6fd85e33ce9765289a5b20b6593983126ac436f2189208adfdc553649bca631fa61174ce91682e257bf27327cc904fcca32808de8a1c3b718d061e999afc0e82ddadf3aefe1f66ae12dc94ce0e3d0234eceb08ef6775ed8568f337d5872a7b2a36f4eb1ca849a0100a9434979012e1cd05feb3d2fd267f20177e95a2d5f6f3f6ec71832770896cb5536cd6ba8d1e43d90823c2f839e41fb6634c020b490804cb4ed4f0eee24c62c0b290016c202711117bb1eb72c49a7640e52d6755e92e613d574b89d1d8205b6faade70e41b7a770d39c71fc53cb1eec54647e9e6fffbb58e5e73d3301d67a6c29bd1ffea1d32317c03c6364c6c7279a843d14f3d9a4f86f5872fc08aa33e6438d34c0f6219eb617edd7ba6d7209feb15afb2742cdf0468826fcd18566241dc4d792068001d1a9878bc4815631e9bfa2bec9231b8637dfe0ddefb391fbab023eae3b5675ca2ff8871ba1cdd3225ea6ec212abfb20f436bb901a5f93c4cfd147e7314b4692979dd8f82836f70961fae5ebaa9092aa4439237696fcfda84d79abb10c8dc58d9518952f41e8af670b4b491fdaebcde6f4803a1fa96f1535a9baf00d156f04bb395cad530d956546040215269b7693fffde7f0d9121d693ef93daac8b96cdd4b6fd9b458b6056d8b30f296c1a83b2713d4eb7f118cf938f3efb2bbc855feb3563cbeaf67548c2fdca555e0f258c0951972f7108feb1c0e5bcf3ac533ab073f0714ac8078a958a1beb6e037086a305fe61befad3c5ec553ba85c0ee86f18b36fc5994d00485c14ee792217cefa3af08c76a1d1ca67b3ab9b15e7a03c2442f4e5d3316d85838ef542be606f1cecdd8b8c4af1aa9f8491850abc98a12081e3362545a784926545151ab56d87e44ad84afe15dfabc7f0a9d0488728f2061dd1db85e3b9406c69f9eda87c488eb39b72a26608aa49a73dd3597ad8671f95bfc6fbadc23f7b4270ab15f7daa964059014c458ce5b586e448f9b20d90a41220bacf0e2311dfb4f5d8c6f06665785ec1464e0eb34163d0a1c93a2ddd149da7ea2e7ff6b43117c487344ff271d70e691f15580afc5e4189fd3b447b1228071692825a2db54183088c40d68fd3f6467aaa60135c283675ead8c4322a79de114fe2e6da157b6193fce7037e8a8f6c748535cdda7135f70f232e7858f16b4f38e318c0a29926fa9c9a206db2872524d7224793946ce9adb90b6088f879f8694b3ec51adc3bd1b010988774f0ef704bb49fc2ba925f4258c2fab8f46da8b4ec3225f8651585cdfcf57379c7200023246dbb0cf30fd61bdc39a1e4c1d8be9537e872ceee1e87c95f12155590ba67bc98f5330b06f78fae13de87cf869d752e4ef27e71a547dfdc29beaeae1a3f0313087590bdb14d7a525d34564bf1d56e3de010296a4e0cdca4cbd793118978a138285dbd81d5fc65ea356c366ef749849b2cc81b7e8f1a1344590b959793a08a7f153e2db10916592b9c315d1baaa9158810a00e33173d5ecc02ebcda0dd31bd5b6b74d3f81d0eeeea66e0a488e03b727a42273ddb338031aef4a77677bba83496c12f2b3cd956bc0b1d0a2b853d7c0d5760e90bce4ed39c80962d31b5b929b62fd8a153a8f67ac356c05d4cf74cc7aa7531393b914ef18fb9d729c7807942553ad56922c8a76eddefea199cefb381d15e9d272fff3b426d0931b492d9d41604a49c29b640a7a6e336e4090b5f6de0663146abfe513e684ce9275c04dc21d848cc06cd372bf554293dd7e63db84b1ec875a328d76edb69abb5e664fbf5e9cc5d33c5cb4ae095756d6648654a7046202628a921b8b9f18fd888e1ea93411f56c62f326c221dcbd4a6f9f9dff0dd9046ae1a24275ee88117396b0a512735e19a107b006f61558225f09f2fd38c97da0b0fd1f8125e027713c220012b68d8d8d2ad4a89ac4652333e7d8fef7da5b2bc37ba5d9dd7c2ae96060cfd8f26976b5ccc4f039dda946be2abfcd2f58005f5e7e3a29541278339830bf524e9bd454f75d75717eab76e096cbf2787c8fa573fd86aada473b982e26b4194d78b85390aa23aa7f536c06fc394a82c1ac33d141ad24d0e6defdbeed11ce27893467d907f4f5d51b1e5e66db9e39daaa5ac2115f849c98c35ff2cc69c417b2225334b5f05d84c42ece25e34cb7db18487ef8749bccea862951b389a38ff1c3fcc795ebbda2baddcbf1ddd2dbfb1803eeb6769ba1ade94851522b0ddc764abb1cfb7a88e0a1d9359b690b4e51035fb6a979f619c180b50d7f08c29dab0625ecabb76c2e416107c43382fb59434fedcfef88c389960225d6eda12a52bd56d4782d69b8415385346b6d09ccb89cbc4f032a92fec424215725460a4ac0eaba94077ffbdc320e327a53f0e0a1420a14771f55b058e46258be851993e2892a28a9d6e1c2e3f7112e70d016ed39ef65b39274cb1e2b60a7687b09107df428ebd973028c248f4f3cd43897ce70e4383e44cdf3939f19374dd46fad382eb2177bbaa735681ce73a18f3b9e03629e21f56e0a1e6a0d3ed03a1287aaaadf14125e700eebbab63c81611dd3d24dfebed27841dfe35323d684bd28bb91de236a1b2e6b28fd6a65486c45dbf227618ce259dcd31c8de988b6f560da29e509fcde6723c079e1b150fb9a5686e569839dbbd60a6f25cfc51321c1332b3637a4ed", 0x2000, &(0x7f0000004a40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000400)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) ioctl$sock_SIOCETHTOOL(r2, 0x80086601, 0x0) 12:52:09 executing program 1: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r0, &(0x7f00000000c0)=ANY=[], 0x208e24b) socketpair$tipc(0x1e, 0x2, 0x0, &(0x7f0000000040)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r1, 0x8912, 0x400308) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r0, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cgroup.controllers\x00', 0xb00000000065808, 0x0) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$ethtool(&(0x7f0000000540), 0xffffffffffffffff) sendmsg$ETHTOOL_MSG_COALESCE_SET(0xffffffffffffffff, &(0x7f0000000640)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000000)={0x34, r4, 0x401, 0x0, 0x0, {}, [@ETHTOOL_A_COALESCE_HEADER={0x18, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'netdevsim0\x00'}]}, @ETHTOOL_A_COALESCE_PKT_RATE_LOW={0x8}]}, 0x34}}, 0x0) sendfile(r3, r2, 0x0, 0xffffffff) 12:52:09 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f000099e000)={0x2, 0x4e20, @local}, 0x10) sendto$inet(r0, &(0x7f0000000140), 0xffffffffffffff58, 0x20008005, &(0x7f0000000100)={0x2, 0x4e20}, 0x10) r1 = socket$packet(0x11, 0xa, 0x300) setsockopt$SO_ATTACH_FILTER(r1, 0x1, 0x1a, &(0x7f0000000040)={0x2, &(0x7f0000000100)=[{0x28, 0x0, 0x0, 0xfffff034}, {0x80000006, 0x0, 0x0, 0x20}]}, 0x8) r2 = creat(&(0x7f0000000000)='./file0\x00', 0xd) bind$packet(r2, &(0x7f0000000080)={0x11, 0xf5, 0x0, 0x1, 0x1f, 0x6, @local}, 0x14) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c03, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x0, 0x5}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) setsockopt$inet_tcp_TCP_MD5SIG(0xffffffffffffffff, 0x6, 0xe, &(0x7f00000002c0)={@in6={{0xa, 0x4e23, 0x74, @dev={0xfe, 0x80, '\x00', 0x2f}, 0x200}}, 0x0, 0x0, 0x4d, 0x0, "2a6d9df8ff129e94f2248a6b34db3136ae98475c77e7223b86048369ee119bdf869dddb1cdeb508a62c1de8d1a59676cc8b4d63b519ff468b9c231c4c7749d12129702d9e379b09ba528441e6f6dd9bd"}, 0xd8) recvfrom(r0, &(0x7f0000000480)=""/110, 0xfffffe32, 0x734, 0x0, 0xffffffffffffff39) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000280)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000000240)={&(0x7f0000000180)=ANY=[@ANYRES64=r1, @ANYRESHEX], 0x64}}, 0x8880) 12:52:09 executing program 4: r0 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000000080)='net/softnet_stat\x00') read$usbmon(r0, &(0x7f00000000c0)=""/90, 0x5a) 12:52:09 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800002, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) timer_create(0x0, &(0x7f0000000300)={0x0, 0x12, 0x0, @thr={0x0, 0x0}}, &(0x7f0000000080)) timer_settime(0x0, 0x0, &(0x7f0000000340)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) timer_create(0x0, &(0x7f0000000100)={0x0, 0x14, 0x0, @thr={0x0, 0x0}}, &(0x7f0000000300)=0x0) timer_settime(r1, 0x0, &(0x7f0000000180)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) r2 = msgget$private(0x0, 0x0) msgsnd(r2, &(0x7f0000000c00)=ANY=[@ANYRESHEX], 0x64, 0x0) msgsnd(r2, &(0x7f0000000840)={0x3, "22251450169831c7f027caeeafafb1fb73890ef4d0bb8f067fc3e84af02468240320df94261b9307b3331cea8354b2588db852c6bbad8db77b9b6f577618bf7e43ce6d6c952fe094db4ef441438e3c695c4687c6cb51471b0b89c2da9033f430a58422eaf04dd2d4fcb8b425a6ebc7fe53ed70375ab00db36e0608d763af17fd08b068e76d7916e0ad7676e35e6139bb6640ad837d40417e5597f058c8fb98099bfad25d64eb9c2ba64b5d31e2bcf6370d2523224928cc88814bc0152189172b1923865af140c207786219a1caed4deb552939437b04a9cffedbb7f4a2451afd91349f734ce68457f7faaf4ebdb3390ac8fbb5b23cb6bbf3706e16385a80c703e17a319031c84d9b8d5024bf11ad05b19b76886f7dd5a76b5a8ef5f781676495517eaeb5348c6f53f8b8e2c991fff5d99f5d7f4c5f504ee1c487441635dabea40bc3adc1554e7bd2f0be9383f0b4fcb8e7fe116085aead66ef1cf4a2d0d6b0dc3f27ae02914a4bb9f80f93ba76500f7790620231ee8bfe511e6d5d1e8eced0c807eac83ffa8ad74306bbe1c4d8aa5f02b0875e195fd440d4d93a81821142e1470ebb6dcab37f75eb5399bb6b2127c3a2a43af00e9aaadb4b66f7670a2146c502962f2826ca7a5ea97a69dc4a895bc63ec932b21907212747fea8749714ca7eefbf16e177ce162704107c41446d3fe80dccb5377d46b097af061dd242281e6abba13f178bd333991f106e6bda7bc53cb8f1e1495e8fa2b2e3e1dccd099ddef8abb9139e42e983704a51cb694a5281af9fc2970f6463e92bb8bf8269d3d8e503532e61ce7e15a0ec7e94965fee959cfaed164e0a37942efbc25a5c505eb98e661edefb4f27f9b6769d8db90aa45281d223654d1b7ebd2150cb7de15983dedf7513976ff7294d8193b1843b58e07341265e805ab084ed884152df751257dc9829a3d11ef4f34940691523cd7bc5114dab3e8d9581381cfa9a807515734b9e16586826c724e05c6c7fd7041a1c0ef6e94418ef066683d7d72eccaf834040f9a159ceee32191f931d01d5be748bd2f84d85e52f6c995eb710947c9b00d50940064983089e129b68e2db3efb634eb5fe1f5678e1c46261b4a0bb1a6bd1848d6493f056db783b3b9f51aa2b46fb7e97f6ebca4dd4f2561a4792536f2509bf0c8f6c7f41d4610b5b4ae84123b36ed1268712f0cc4fe4130b34d0935cecabcfba6f5ca0dc6848de3cffe2ca89127f1b610cbe400195666acdfda122d12b82b18c0cb61723a21303500b2c75498360abeb82d4b8147017bc5679"}, 0x39d, 0x0) msgrcv(r2, 0x0, 0x70, 0x0, 0x0) 12:52:09 executing program 4: r0 = syz_usb_connect$hid(0x0, 0x36, &(0x7f0000000180)={{0x12, 0x1, 0x0, 0x0, 0x0, 0x0, 0x8, 0x5ac, 0x265, 0x0, 0x0, 0x0, 0x0, 0x1, [{{0x9, 0x2, 0x24, 0x1, 0x0, 0x0, 0x0, 0x0, [{{0x9, 0x4, 0x0, 0x0, 0x9, 0x3, 0x0, 0x0, 0x0, {0x9, 0x21, 0x0, 0x0, 0x1, {0x22, 0x29}}}}]}}]}}, 0x0) syz_usb_control_io$hid(r0, 0x0, 0x0) syz_usb_control_io(r0, &(0x7f00000003c0)={0x2c, &(0x7f0000000200)=ANY=[@ANYBLOB='\x00\x00,'], 0x0, 0x0, 0x0, 0x0}, 0x0) [ 677.255740][ T36] audit: type=1804 audit(1630587129.633:259): pid=5221 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/532/cgroup.controllers" dev="sda1" ino=15000 res=1 errno=0 12:52:09 executing program 2: pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) openat$procfs(0xffffffffffffff9c, &(0x7f00000000c0)='/proc/timer_list\x00', 0x0, 0x0) perf_event_open$cgroup(&(0x7f0000000340)={0x3, 0x80, 0x3, 0xa1, 0x20, 0x3, 0x0, 0x100, 0x40, 0x4, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x9, 0x0, @perf_bp={&(0x7f0000000280), 0x4}, 0x844a0, 0x0, 0x0, 0x6, 0x0, 0x0, 0xfff, 0x0, 0x200}, 0xffffffffffffffff, 0x4, 0xffffffffffffffff, 0x0) io_submit(0x0, 0x4, &(0x7f0000005e00)=[&(0x7f0000000700)={0x0, 0x0, 0x0, 0x0, 0x4, r0, 0x0, 0x0, 0x0, 0x0, 0x2}, &(0x7f0000000ac0)={0x0, 0x0, 0x0, 0x7, 0xfd9, r1, &(0x7f0000001c80)}, &(0x7f0000001d40)={0x0, 0x0, 0x0, 0x5, 0x0, r1, &(0x7f0000004c40)="da9e0ad49e0fc4291ce1e10c1f6eabe8cf1043290ceb25d5a420a54137e42782e49b76f563c757bad9b1d2d8a9e5080d70b5301932f37831f3f2ce0f5fb839189fee583df04fd16d3b0a26e2eb5cf5de4003fb1be5b9953912e401b3b29aa26cb20bcebce0e1ec9a6d449dd4f3dab5603e0d2bb970efbb317b8c21680d4ab02ed5da56a86e2bbd64a21a55249724ad9780a3cb6fb8a4f84db9a34669db66d5e267b4ec880247eae5fa6dc511933d0f6be7e55749933a3e011ab102cd3823a2cfcf4a5784cd06947d2867a77039cd410e66adc8621723775451f75c2dff9647a83e90298b7df449d4ebc1447d9f6657999f939637de139f0b3719dee3457c95f24749c1f6cfa001011b5033d838ea3b314ce44efffd80aa568a023dc8ec1b37a2f4ad68b9c4df1b47779fb5f3e4277f041462c3bdb9d843e8345c1620969016e4f8d8c0ee8604dd8018a5ffca5be3f39446afca403c3c28877194fe671dbf44faded797b01d02b5a7ce125a8b2ddab8ece932a3b3aef0b3497f1c62be4d4c8fdaaf92e6c63e9b9aeabb6fcb7c2bef7fe99ce2bdb3bc5de9d158907c675437504f9c26cc6fb9588001f0622c2d28207e5d657110edd555dbadf5c739055d935cfb6f26738115969bce8c751da95f22fb5770d3b5f228e6d95984359078d14b012348c5d79ffe544df79d659bd38ec1e40209b9a4676d7db40c9b76b52a3907dcf0d996637dc60ae89a070e357414dc50db463f0b17fb04bec4612ba36cf1a26096b856353974b75024e2e14d5cf95dd3d9070a0a1eafc166238e6e4104d84158675b69c6273748eb57271d250a0c16ba666822b1e5e02a91bb17fdf921f37d74cd33508369500066456952a11ed6c9a7140a2101a39b43d85ac873549270545d9c886028067b05aa8cfa52f40ba4565aff8fdfab19bab7cc8ddc897e2a3564071fd8f51fae028dca24db7e7268c44a1591539841b1294f9292e5f215dec8ca8d3168332df0cec1ef49f2939b2de013f49a089bdfe471d0c8175aaede2af31050d031c67b231ee54a7c74da59289d7ee381c613348f43f6a1069be3ce773a63a44cb7f641a6ae5863af79608848674973c4d531dff6b7050c034c0adb6d97b6ac1f269dc4d81d9081e62c089cdc3a33b1c64380b94d5ceb0ba21c3e0e4df34005126930958713f99652e4d3ece16a2fdaf8fbf2a1a53ad654227005006a86a10802af2a188085e12bad0c4bd6320b2eaec0b2824f81e9fa57f048a71b8e390e6b9cc272dac583b78a50f97d6638baef5971ff4b1de1debfeedfe910728b9bba3a52d850ce321d9738e532dc54d90d28f94dcea2355cea2b153cb9dae690270844f368eb485fb4dff660a5407e43b980b676630ce7dce0820a6f655451e97a6feda32cef611e7f0bbb8386252a091a73f9ecb2ef7a388107b6a30cf041ae60edce7fa79283ede8c3f79269c811f697b8c109bdc7e316fb8a055876b366e6dcc344e2eb48b2f48d53d3997969b33b90920e1cf3db90ecbff7e9061cbd806d283b56f98b1b20b7a1aae3a907b7119c0ed7430ecb0e970304c80531c89afe25e94720b48f5e6f67b022705b31a67a1547d67d4f41ba41148443a68dd9afb8c7d56bc46717e7bbc4383a1e39d2950414eb0de772a6cc918a87eadb18be3b823f7a1357b5dbc672542aca1615fc0e1a7fa15620a3748935ae5cae5250e22cfd475781f62c9e520c855c50707e8e5af8bc59cf1d4f156a8fe4a28d39bfd4f9d3ee97161d3fd68b1262e28b0f04c15a5ff53fd46e7c83d8081cd64b99980d0550606e2292d1e1d29d7dc54c2c92227f5906f8757e2218e944ac3d7a56dd857fa7d9c025e9293debb7b2d8ebd3f7eb12e046f9d05e4c7ecb2d24c5556a2d475794a74be0623fe36ffeafd20a745de075e51eec0bbc1c0dbfab64ae43b07f8cd52e4b00b324fa040db4465c68777f9251e3656e5c0bf5e56e55276dbc26bc660d1411ccf3f6a3ed06935fa4052ad395758cf2fa863208e8d03417b044dc3b77e0e2f755f01f51a33c53a5831d3cbfecab1dec6f540b52a77c6bad2b7eed861bfd79a121aa59d0cd8d09bb90885c5e9cb95f09750642a8aeeed3f580b441b925a9e831cbc56cdfc1ef2f129c2cdd323c3b328dddf0881c8af46df121d06af81533e5fbb07a2747cc510b25b30e30cc7461de5d8867706174172e88a9da88e66c080f800f3c69e70d6048f98b33dbfc1e03c2605a779b4d3624c79734e25a394c3dfc5bb5e6748b3ce0e9ac2f81d9f1527261af1a45cd152f5ea77fb789ad814e2223450bbb8b64af90ad9428a6d619479ecbc604c1bde2c1e824b0d161c0ee32f837bf29b33ff73e9763e27a40569f261948a4a4da10e97e7df252578e0c469016e3b42e5180be230888d5c294ede4f2897df1cf99feeb5f3b40586d894f055aead006348f099ab117e41bcf9bda1e2d9512c1779ff99b8b0fa28dff3715350e54803475396d598f69b30c2f9fed134e2abed33fb23812ab537ab6fc77459c6ebe7baca135a563e3fd4897bb37e6670730b38751d11e9cd0020067d4065e13f872a836df7f940eb3809c8bd91a59164065c569502c8b7f519c45eb86c5f2aff5f1f2597777b672d84886a92344e71b93ab333c2f2463f86444fcbff7c919e6f6a2d2cfd1ad17afe7ccdb6dcbe41ccf00a8281cbb8adda34df43dea0f7e835b99ee788ceceeebfacd789afc9ca559ac00133f319088ffbec26bbc2937e56e9ef7bac19385061af4597d2dc45ccbebecbc7634cfbfeb6e8d7ecf6c361972137ab921d57ea5f39403f813829cc0e408e1563d503f634085ee09063e51d8f658402b41a7deb56d43e6", 0x7e0, 0x8, 0x0, 0x7}, 0x0]) setsockopt$SO_ATTACH_FILTER(0xffffffffffffffff, 0x1, 0x1a, 0x0, 0x0) r2 = socket$inet_udp(0x2, 0x2, 0x0) close(r2) socket$inet_icmp_raw(0x2, 0x3, 0x1) write$binfmt_misc(r1, &(0x7f0000000140)=ANY=[], 0x4240a2a0) perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50a, 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, 0x4, 0x0, @perf_bp={0x0}}, 0x0, 0xfbffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_MODIFY_ATTRIBUTES(0xffffffffffffffff, 0x4008240b, &(0x7f0000000100)={0x0, 0x80, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3ff, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x401, 0x0, @perf_config_ext, 0x10800, 0x0, 0xff, 0x0, 0x0, 0x2, 0x0, 0x0, 0x7, 0x0, 0x5}) bind$inet(r2, &(0x7f00000001c0)={0x2, 0x0, @local}, 0x10) connect$inet(r2, &(0x7f0000000040)={0x2, 0x0, @multicast2}, 0x10) splice(r0, 0x0, r2, 0x0, 0x2ffff, 0x0) recvmmsg$unix(0xffffffffffffffff, &(0x7f0000004a40)=[{{&(0x7f0000000280), 0x6e, &(0x7f0000000540)=[{&(0x7f0000000400)=""/95, 0x5f}, {0x0}], 0x2, 0x0, 0x18}}, {{&(0x7f00000005c0), 0x6e, 0x0, 0x0, &(0x7f0000000ac0)}}, {{0x0, 0x0, &(0x7f0000001d80)=[{0x0}, {&(0x7f0000001c40)=""/2, 0x2}], 0x2}}, {{&(0x7f0000002f00)=@abs, 0x6e, 0x0}}, {{&(0x7f0000003180)=@abs, 0x6e, &(0x7f0000003280)=[{0x0}], 0x1}}, {{&(0x7f00000032c0), 0x6e, 0x0}}], 0x6, 0x40001042, 0x0) perf_event_open(&(0x7f0000000200)={0x0, 0x80, 0x0, 0xa0, 0x1f, 0x35, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x2, @perf_bp={&(0x7f0000000180)}, 0x0, 0xff, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xafa, 0x0, 0x401}, 0x0, 0x0, 0xffffffffffffffff, 0x9) [ 677.595750][ T5] usb 5-1: new high-speed USB device number 8 using dummy_hcd 12:52:10 executing program 1: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) bind$inet6(r1, &(0x7f0000000040)={0xa, 0xe22}, 0x1c) connect$inet6(r1, &(0x7f0000000100)={0xa, 0x0, 0x0, @dev, 0xb95}, 0x1c) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r3 = socket$netlink(0x10, 0x3, 0x8000000004) writev(r3, &(0x7f0000001200)=[{&(0x7f0000000080)="580000001400add427323b472545b45602117fffffff81004e220e227f000001925aa80020007b00090080007f000001e809000000ff0000f03ac710950b0000ffffffffffffffffffe7ee00000000000000000200000000", 0x58}], 0x1) 12:52:10 executing program 1: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) bind$inet6(r1, &(0x7f0000000040)={0xa, 0xe22}, 0x1c) connect$inet6(r1, &(0x7f0000000100)={0xa, 0x0, 0x0, @dev, 0xb95}, 0x1c) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r3 = socket$netlink(0x10, 0x3, 0x8000000004) writev(r3, &(0x7f0000001200)=[{&(0x7f0000000080)="580000001400add427323b472545b45602117fffffff81004e220e227f000001925aa80020007b00090080007f000001e809000000ff0000f03ac710950b0000ffffffffffffffffffe7ee00000000000000000200000000", 0x58}], 0x1) 12:52:10 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800002, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) timer_create(0x0, &(0x7f0000000300)={0x0, 0x12, 0x0, @thr={0x0, 0x0}}, &(0x7f0000000080)) timer_settime(0x0, 0x0, &(0x7f0000000340)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) timer_create(0x0, &(0x7f0000000100)={0x0, 0x14, 0x0, @thr={0x0, 0x0}}, &(0x7f0000000300)=0x0) timer_settime(r1, 0x0, &(0x7f0000000180)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) r2 = msgget$private(0x0, 0x0) msgsnd(r2, &(0x7f0000000c00)=ANY=[@ANYRESHEX], 0x64, 0x0) msgsnd(r2, &(0x7f0000000840)={0x3, "22251450169831c7f027caeeafafb1fb73890ef4d0bb8f067fc3e84af02468240320df94261b9307b3331cea8354b2588db852c6bbad8db77b9b6f577618bf7e43ce6d6c952fe094db4ef441438e3c695c4687c6cb51471b0b89c2da9033f430a58422eaf04dd2d4fcb8b425a6ebc7fe53ed70375ab00db36e0608d763af17fd08b068e76d7916e0ad7676e35e6139bb6640ad837d40417e5597f058c8fb98099bfad25d64eb9c2ba64b5d31e2bcf6370d2523224928cc88814bc0152189172b1923865af140c207786219a1caed4deb552939437b04a9cffedbb7f4a2451afd91349f734ce68457f7faaf4ebdb3390ac8fbb5b23cb6bbf3706e16385a80c703e17a319031c84d9b8d5024bf11ad05b19b76886f7dd5a76b5a8ef5f781676495517eaeb5348c6f53f8b8e2c991fff5d99f5d7f4c5f504ee1c487441635dabea40bc3adc1554e7bd2f0be9383f0b4fcb8e7fe116085aead66ef1cf4a2d0d6b0dc3f27ae02914a4bb9f80f93ba76500f7790620231ee8bfe511e6d5d1e8eced0c807eac83ffa8ad74306bbe1c4d8aa5f02b0875e195fd440d4d93a81821142e1470ebb6dcab37f75eb5399bb6b2127c3a2a43af00e9aaadb4b66f7670a2146c502962f2826ca7a5ea97a69dc4a895bc63ec932b21907212747fea8749714ca7eefbf16e177ce162704107c41446d3fe80dccb5377d46b097af061dd242281e6abba13f178bd333991f106e6bda7bc53cb8f1e1495e8fa2b2e3e1dccd099ddef8abb9139e42e983704a51cb694a5281af9fc2970f6463e92bb8bf8269d3d8e503532e61ce7e15a0ec7e94965fee959cfaed164e0a37942efbc25a5c505eb98e661edefb4f27f9b6769d8db90aa45281d223654d1b7ebd2150cb7de15983dedf7513976ff7294d8193b1843b58e07341265e805ab084ed884152df751257dc9829a3d11ef4f34940691523cd7bc5114dab3e8d9581381cfa9a807515734b9e16586826c724e05c6c7fd7041a1c0ef6e94418ef066683d7d72eccaf834040f9a159ceee32191f931d01d5be748bd2f84d85e52f6c995eb710947c9b00d50940064983089e129b68e2db3efb634eb5fe1f5678e1c46261b4a0bb1a6bd1848d6493f056db783b3b9f51aa2b46fb7e97f6ebca4dd4f2561a4792536f2509bf0c8f6c7f41d4610b5b4ae84123b36ed1268712f0cc4fe4130b34d0935cecabcfba6f5ca0dc6848de3cffe2ca89127f1b610cbe400195666acdfda122d12b82b18c0cb61723a21303500b2c75498360abeb82d4b8147017bc5679"}, 0x39d, 0x0) msgrcv(r2, 0x0, 0x70, 0x0, 0x0) 12:52:10 executing program 1: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) bind$inet6(r1, &(0x7f0000000040)={0xa, 0xe22}, 0x1c) connect$inet6(r1, &(0x7f0000000100)={0xa, 0x0, 0x0, @dev, 0xb95}, 0x1c) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r3 = socket$netlink(0x10, 0x3, 0x8000000004) writev(r3, &(0x7f0000001200)=[{&(0x7f0000000080)="580000001400add427323b472545b45602117fffffff81004e220e227f000001925aa80020007b00090080007f000001e809000000ff0000f03ac710950b0000ffffffffffffffffffe7ee00000000000000000200000000", 0x58}], 0x1) [ 677.855870][ T5] usb 5-1: Using ep0 maxpacket: 8 12:52:10 executing program 1: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) bind$inet6(r1, &(0x7f0000000040)={0xa, 0xe22}, 0x1c) connect$inet6(r1, &(0x7f0000000100)={0xa, 0x0, 0x0, @dev, 0xb95}, 0x1c) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r3 = socket$netlink(0x10, 0x3, 0x8000000004) writev(r3, &(0x7f0000001200)=[{&(0x7f0000000080)="580000001400add427323b472545b45602117fffffff81004e220e227f000001925aa80020007b00090080007f000001e809000000ff0000f03ac710950b0000ffffffffffffffffffe7ee00000000000000000200000000", 0x58}], 0x1) 12:52:10 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_hard(r1, 0x8933, &(0x7f0000000200)={'batadv_slave_0\x00', 0x0}) sendmsg$nl_route(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000240)=ANY=[@ANYBLOB="3c0000001800010000000000000000000a0000000000000000000000100016800c000100010000000000000008000400", @ANYRES32=r2, @ANYBLOB="0600150007"], 0x3c}}, 0x0) 12:52:10 executing program 5: perf_event_open(&(0x7f00000000c0)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) setsockopt$IP_VS_SO_SET_FLUSH(0xffffffffffffffff, 0x0, 0x485, 0x0, 0x0) r0 = openat$bsg(0xffffff9c, 0x0, 0x200, 0x0) prctl$PR_TASK_PERF_EVENTS_ENABLE(0x20) r1 = socket$netlink(0x10, 0x3, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0, 0x0}, &(0x7f0000cab000)=0xc) fcntl$setlease(0xffffffffffffffff, 0x400, 0x1) setregid(0x0, r2) setgid(r2) sendmsg$NLBL_UNLABEL_C_STATICREMOVE(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000040), 0xc, &(0x7f0000000080)={&(0x7f0000000500)=ANY=[@ANYBLOB='\x00\x00\x00\x00\x00\x00\x00', @ANYRES16=0x0, @ANYBLOB="000227bd7000fddbdf250400000005000100000000000500010001000000080005007f00000114000300fe80000000000000000000000000002814000300fc00000000000000000000000000000161fc06006970365f76746930000000000000000014000300fc0200"/118], 0x7c}, 0x1, 0x0, 0x0, 0x1c810}, 0x1) sendmsg$NLBL_UNLABEL_C_STATICLIST(r0, &(0x7f0000000340)={&(0x7f0000000180)={0x10, 0x0, 0x0, 0xffffffffffffffff}, 0xc, &(0x7f00000001c0)={&(0x7f0000000400)=ANY=[@ANYBLOB, @ANYRES64=r2, @ANYBLOB="000229bd7000ffdbdf250500000014000300fc0200000000000000000000000000000500010001000000200007007379bf13f26f5f753a6f626a6563745f723a77746d705f743a7330001400030027080000000000000000000000000000080004000a010101f9ff0200fc0200000000000000000000000000009dfe3d025c46809c92cbb09400687372300000000000000000000000002800070073797374656d5f753a6f626a6563745f723a63726173685f6465766963655f743a73300005"], 0xd8}, 0x1, 0x0, 0x0, 0x40800}, 0x4) clone(0x20002004ffc, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) exit_group(0x0) mkdir(&(0x7f00000003c0)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000240)='./file0\x00', &(0x7f0000000200)='cgroup2\x00', 0x0, 0x0) r3 = open(&(0x7f0000000380)='./file0\x00', 0x0, 0x0) r4 = openat$cgroup_subtree(r3, &(0x7f0000000080), 0x2, 0x0) write$cgroup_subtree(r4, &(0x7f00000000c0)={[{0x2d, 'pids'}]}, 0x7) [ 678.006053][ T5] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has an invalid bInterval 0, changing to 7 [ 678.026193][ T5] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has invalid wMaxPacketSize 0 [ 678.028559][ T5274] netlink: 'syz-executor.1': attribute type 1 has an invalid length. [ 678.048725][ T5] usb 5-1: config 0 interface 0 altsetting 0 has 1 endpoint descriptor, different from the interface descriptor's value: 9 [ 678.049669][ T5274] IPv6: RTM_NEWROUTE with no NLM_F_CREATE or NLM_F_REPLACE [ 678.068778][ T5274] IPv6: NLM_F_CREATE should be set when creating new route [ 678.090005][ T5] usb 5-1: New USB device found, idVendor=05ac, idProduct=0265, bcdDevice= 0.00 [ 678.120262][ T5] usb 5-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 12:52:10 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f000099e000)={0x2, 0x4e20, @local}, 0x10) sendto$inet(r0, &(0x7f0000000140), 0xffffffffffffff58, 0x20008005, &(0x7f0000000100)={0x2, 0x4e20}, 0x10) r1 = socket$packet(0x11, 0xa, 0x300) setsockopt$SO_ATTACH_FILTER(r1, 0x1, 0x1a, &(0x7f0000000040)={0x2, &(0x7f0000000100)=[{0x28, 0x0, 0x0, 0xfffff034}, {0x80000006, 0x0, 0x0, 0x20}]}, 0x8) r2 = creat(&(0x7f0000000000)='./file0\x00', 0xd) bind$packet(r2, &(0x7f0000000080)={0x11, 0xf5, 0x0, 0x1, 0x1f, 0x6, @local}, 0x14) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c03, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x0, 0x5}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) setsockopt$inet_tcp_TCP_MD5SIG(0xffffffffffffffff, 0x6, 0xe, &(0x7f00000002c0)={@in6={{0xa, 0x4e23, 0x74, @dev={0xfe, 0x80, '\x00', 0x2f}, 0x200}}, 0x0, 0x0, 0x4d, 0x0, "2a6d9df8ff129e94f2248a6b34db3136ae98475c77e7223b86048369ee119bdf869dddb1cdeb508a62c1de8d1a59676cc8b4d63b519ff468b9c231c4c7749d12129702d9e379b09ba528441e6f6dd9bd"}, 0xd8) recvfrom(r0, &(0x7f0000000480)=""/110, 0xfffffe32, 0x734, 0x0, 0xffffffffffffff39) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000280)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000000240)={&(0x7f0000000180)=ANY=[@ANYRES64=r1, @ANYRESHEX], 0x64}}, 0x8880) 12:52:10 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800002, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) timer_create(0x0, &(0x7f0000000300)={0x0, 0x12, 0x0, @thr={0x0, 0x0}}, &(0x7f0000000080)) timer_settime(0x0, 0x0, &(0x7f0000000340)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) timer_create(0x0, &(0x7f0000000100)={0x0, 0x14, 0x0, @thr={0x0, 0x0}}, &(0x7f0000000300)=0x0) timer_settime(r1, 0x0, &(0x7f0000000180)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) r2 = msgget$private(0x0, 0x0) msgsnd(r2, &(0x7f0000000c00)=ANY=[@ANYRESHEX], 0x64, 0x0) msgsnd(r2, &(0x7f0000000840)={0x3, "22251450169831c7f027caeeafafb1fb73890ef4d0bb8f067fc3e84af02468240320df94261b9307b3331cea8354b2588db852c6bbad8db77b9b6f577618bf7e43ce6d6c952fe094db4ef441438e3c695c4687c6cb51471b0b89c2da9033f430a58422eaf04dd2d4fcb8b425a6ebc7fe53ed70375ab00db36e0608d763af17fd08b068e76d7916e0ad7676e35e6139bb6640ad837d40417e5597f058c8fb98099bfad25d64eb9c2ba64b5d31e2bcf6370d2523224928cc88814bc0152189172b1923865af140c207786219a1caed4deb552939437b04a9cffedbb7f4a2451afd91349f734ce68457f7faaf4ebdb3390ac8fbb5b23cb6bbf3706e16385a80c703e17a319031c84d9b8d5024bf11ad05b19b76886f7dd5a76b5a8ef5f781676495517eaeb5348c6f53f8b8e2c991fff5d99f5d7f4c5f504ee1c487441635dabea40bc3adc1554e7bd2f0be9383f0b4fcb8e7fe116085aead66ef1cf4a2d0d6b0dc3f27ae02914a4bb9f80f93ba76500f7790620231ee8bfe511e6d5d1e8eced0c807eac83ffa8ad74306bbe1c4d8aa5f02b0875e195fd440d4d93a81821142e1470ebb6dcab37f75eb5399bb6b2127c3a2a43af00e9aaadb4b66f7670a2146c502962f2826ca7a5ea97a69dc4a895bc63ec932b21907212747fea8749714ca7eefbf16e177ce162704107c41446d3fe80dccb5377d46b097af061dd242281e6abba13f178bd333991f106e6bda7bc53cb8f1e1495e8fa2b2e3e1dccd099ddef8abb9139e42e983704a51cb694a5281af9fc2970f6463e92bb8bf8269d3d8e503532e61ce7e15a0ec7e94965fee959cfaed164e0a37942efbc25a5c505eb98e661edefb4f27f9b6769d8db90aa45281d223654d1b7ebd2150cb7de15983dedf7513976ff7294d8193b1843b58e07341265e805ab084ed884152df751257dc9829a3d11ef4f34940691523cd7bc5114dab3e8d9581381cfa9a807515734b9e16586826c724e05c6c7fd7041a1c0ef6e94418ef066683d7d72eccaf834040f9a159ceee32191f931d01d5be748bd2f84d85e52f6c995eb710947c9b00d50940064983089e129b68e2db3efb634eb5fe1f5678e1c46261b4a0bb1a6bd1848d6493f056db783b3b9f51aa2b46fb7e97f6ebca4dd4f2561a4792536f2509bf0c8f6c7f41d4610b5b4ae84123b36ed1268712f0cc4fe4130b34d0935cecabcfba6f5ca0dc6848de3cffe2ca89127f1b610cbe400195666acdfda122d12b82b18c0cb61723a21303500b2c75498360abeb82d4b8147017bc5679"}, 0x39d, 0x0) msgrcv(r2, 0x0, 0x70, 0x0, 0x0) 12:52:10 executing program 1: r0 = io_uring_setup(0x2832, &(0x7f0000000000)) r1 = eventfd2(0x0, 0x80800) io_uring_register$IORING_REGISTER_FILES(r0, 0x2, &(0x7f00000000c0)=[0xffffffffffffffff], 0x1) io_uring_register$IORING_REGISTER_FILES_UPDATE(r0, 0x6, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)=[r1]}, 0x1) [ 678.162586][ T5] usb 5-1: config 0 descriptor?? [ 678.850840][ T5] usb 5-1: USB disconnect, device number 8 [ 679.615645][T10139] usb 5-1: new high-speed USB device number 9 using dummy_hcd [ 679.855575][T10139] usb 5-1: Using ep0 maxpacket: 8 [ 679.976675][T10139] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has an invalid bInterval 0, changing to 7 [ 679.987622][T10139] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has invalid wMaxPacketSize 0 [ 679.998515][T10139] usb 5-1: config 0 interface 0 altsetting 0 has 1 endpoint descriptor, different from the interface descriptor's value: 9 [ 680.011991][T10139] usb 5-1: New USB device found, idVendor=05ac, idProduct=0265, bcdDevice= 0.00 [ 680.021449][T10139] usb 5-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 680.033122][T10139] usb 5-1: config 0 descriptor?? 12:52:12 executing program 4: r0 = syz_usb_connect$hid(0x0, 0x36, &(0x7f0000000180)={{0x12, 0x1, 0x0, 0x0, 0x0, 0x0, 0x8, 0x5ac, 0x265, 0x0, 0x0, 0x0, 0x0, 0x1, [{{0x9, 0x2, 0x24, 0x1, 0x0, 0x0, 0x0, 0x0, [{{0x9, 0x4, 0x0, 0x0, 0x9, 0x3, 0x0, 0x0, 0x0, {0x9, 0x21, 0x0, 0x0, 0x1, {0x22, 0x29}}}}]}}]}}, 0x0) syz_usb_control_io$hid(r0, 0x0, 0x0) syz_usb_control_io(r0, &(0x7f00000003c0)={0x2c, &(0x7f0000000200)=ANY=[@ANYBLOB='\x00\x00,'], 0x0, 0x0, 0x0, 0x0}, 0x0) 12:52:12 executing program 1: r0 = io_uring_setup(0x2832, &(0x7f0000000000)) r1 = eventfd2(0x0, 0x80800) io_uring_register$IORING_REGISTER_FILES(r0, 0x2, &(0x7f00000000c0)=[0xffffffffffffffff], 0x1) io_uring_register$IORING_REGISTER_FILES_UPDATE(r0, 0x6, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)=[r1]}, 0x1) 12:52:12 executing program 5: perf_event_open(&(0x7f00000000c0)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) setsockopt$IP_VS_SO_SET_FLUSH(0xffffffffffffffff, 0x0, 0x485, 0x0, 0x0) r0 = openat$bsg(0xffffff9c, 0x0, 0x200, 0x0) prctl$PR_TASK_PERF_EVENTS_ENABLE(0x20) r1 = socket$netlink(0x10, 0x3, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0, 0x0}, &(0x7f0000cab000)=0xc) fcntl$setlease(0xffffffffffffffff, 0x400, 0x1) setregid(0x0, r2) setgid(r2) sendmsg$NLBL_UNLABEL_C_STATICREMOVE(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000040), 0xc, &(0x7f0000000080)={&(0x7f0000000500)=ANY=[@ANYBLOB='\x00\x00\x00\x00\x00\x00\x00', @ANYRES16=0x0, @ANYBLOB="000227bd7000fddbdf250400000005000100000000000500010001000000080005007f00000114000300fe80000000000000000000000000002814000300fc00000000000000000000000000000161fc06006970365f76746930000000000000000014000300fc0200"/118], 0x7c}, 0x1, 0x0, 0x0, 0x1c810}, 0x1) sendmsg$NLBL_UNLABEL_C_STATICLIST(r0, &(0x7f0000000340)={&(0x7f0000000180)={0x10, 0x0, 0x0, 0xffffffffffffffff}, 0xc, &(0x7f00000001c0)={&(0x7f0000000400)=ANY=[@ANYBLOB, @ANYRES64=r2, @ANYBLOB="000229bd7000ffdbdf250500000014000300fc0200000000000000000000000000000500010001000000200007007379bf13f26f5f753a6f626a6563745f723a77746d705f743a7330001400030027080000000000000000000000000000080004000a010101f9ff0200fc0200000000000000000000000000009dfe3d025c46809c92cbb09400687372300000000000000000000000002800070073797374656d5f753a6f626a6563745f723a63726173685f6465766963655f743a73300005"], 0xd8}, 0x1, 0x0, 0x0, 0x40800}, 0x4) clone(0x20002004ffc, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) exit_group(0x0) mkdir(&(0x7f00000003c0)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000240)='./file0\x00', &(0x7f0000000200)='cgroup2\x00', 0x0, 0x0) r3 = open(&(0x7f0000000380)='./file0\x00', 0x0, 0x0) r4 = openat$cgroup_subtree(r3, &(0x7f0000000080), 0x2, 0x0) write$cgroup_subtree(r4, &(0x7f00000000c0)={[{0x2d, 'pids'}]}, 0x7) 12:52:12 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket$inet_tcp(0x2, 0x1, 0x0) getsockopt$inet_tcp_buf(r1, 0x6, 0xd, &(0x7f0000000200)=""/211, &(0x7f0000000000)=0xd3) 12:52:12 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800002, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) timer_create(0x0, &(0x7f0000000300)={0x0, 0x12, 0x0, @thr={0x0, 0x0}}, &(0x7f0000000080)) timer_settime(0x0, 0x0, &(0x7f0000000340)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) timer_create(0x0, &(0x7f0000000100)={0x0, 0x14, 0x0, @thr={0x0, 0x0}}, &(0x7f0000000300)=0x0) timer_settime(r1, 0x0, &(0x7f0000000180)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) r2 = msgget$private(0x0, 0x0) msgsnd(r2, &(0x7f0000000c00)=ANY=[@ANYRESHEX], 0x64, 0x0) msgsnd(r2, &(0x7f0000000840)={0x3, "22251450169831c7f027caeeafafb1fb73890ef4d0bb8f067fc3e84af02468240320df94261b9307b3331cea8354b2588db852c6bbad8db77b9b6f577618bf7e43ce6d6c952fe094db4ef441438e3c695c4687c6cb51471b0b89c2da9033f430a58422eaf04dd2d4fcb8b425a6ebc7fe53ed70375ab00db36e0608d763af17fd08b068e76d7916e0ad7676e35e6139bb6640ad837d40417e5597f058c8fb98099bfad25d64eb9c2ba64b5d31e2bcf6370d2523224928cc88814bc0152189172b1923865af140c207786219a1caed4deb552939437b04a9cffedbb7f4a2451afd91349f734ce68457f7faaf4ebdb3390ac8fbb5b23cb6bbf3706e16385a80c703e17a319031c84d9b8d5024bf11ad05b19b76886f7dd5a76b5a8ef5f781676495517eaeb5348c6f53f8b8e2c991fff5d99f5d7f4c5f504ee1c487441635dabea40bc3adc1554e7bd2f0be9383f0b4fcb8e7fe116085aead66ef1cf4a2d0d6b0dc3f27ae02914a4bb9f80f93ba76500f7790620231ee8bfe511e6d5d1e8eced0c807eac83ffa8ad74306bbe1c4d8aa5f02b0875e195fd440d4d93a81821142e1470ebb6dcab37f75eb5399bb6b2127c3a2a43af00e9aaadb4b66f7670a2146c502962f2826ca7a5ea97a69dc4a895bc63ec932b21907212747fea8749714ca7eefbf16e177ce162704107c41446d3fe80dccb5377d46b097af061dd242281e6abba13f178bd333991f106e6bda7bc53cb8f1e1495e8fa2b2e3e1dccd099ddef8abb9139e42e983704a51cb694a5281af9fc2970f6463e92bb8bf8269d3d8e503532e61ce7e15a0ec7e94965fee959cfaed164e0a37942efbc25a5c505eb98e661edefb4f27f9b6769d8db90aa45281d223654d1b7ebd2150cb7de15983dedf7513976ff7294d8193b1843b58e07341265e805ab084ed884152df751257dc9829a3d11ef4f34940691523cd7bc5114dab3e8d9581381cfa9a807515734b9e16586826c724e05c6c7fd7041a1c0ef6e94418ef066683d7d72eccaf834040f9a159ceee32191f931d01d5be748bd2f84d85e52f6c995eb710947c9b00d50940064983089e129b68e2db3efb634eb5fe1f5678e1c46261b4a0bb1a6bd1848d6493f056db783b3b9f51aa2b46fb7e97f6ebca4dd4f2561a4792536f2509bf0c8f6c7f41d4610b5b4ae84123b36ed1268712f0cc4fe4130b34d0935cecabcfba6f5ca0dc6848de3cffe2ca89127f1b610cbe400195666acdfda122d12b82b18c0cb61723a21303500b2c75498360abeb82d4b8147017bc5679"}, 0x39d, 0x0) msgrcv(r2, 0x0, 0x70, 0x0, 0x0) 12:52:12 executing program 3: r0 = socket$inet6(0xa, 0x6, 0x0) bind$inet6(r0, &(0x7f0000000080)={0xa, 0x4e20}, 0x1c) listen(r0, 0xda) r1 = socket$inet6(0xa, 0x6, 0x0) socketpair$tipc(0x1e, 0x2, 0x0, &(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$TUNSETLINK(r2, 0x8912, 0x400308) setsockopt$inet6_int(r1, 0x29, 0x6, &(0x7f0000000040), 0x4) connect$inet6(r1, &(0x7f00000000c0)={0xa, 0x4e20, 0x0, @empty}, 0x1c) 12:52:12 executing program 1: r0 = io_uring_setup(0x2832, &(0x7f0000000000)) r1 = eventfd2(0x0, 0x80800) io_uring_register$IORING_REGISTER_FILES(r0, 0x2, &(0x7f00000000c0)=[0xffffffffffffffff], 0x1) io_uring_register$IORING_REGISTER_FILES_UPDATE(r0, 0x6, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)=[r1]}, 0x1) 12:52:12 executing program 3: close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) r0 = openat$6lowpan_enable(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) lseek(r0, 0x0, 0x0) 12:52:12 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket$inet_tcp(0x2, 0x1, 0x0) getsockopt$inet_tcp_buf(r1, 0x6, 0xd, &(0x7f0000000200)=""/211, &(0x7f0000000000)=0xd3) [ 680.363380][ T36] audit: type=1400 audit(1630587132.743:260): lsm=SMACK fn=smk_ipv6_check action=denied subject="_" object="(#-A[)!}(C4" requested=w pid=5332 comm="syz-executor.3" dest=8270 [ 680.381745][T10139] usbhid 5-1:0.0: can't add hid device: -71 [ 680.389258][T10139] usbhid: probe of 5-1:0.0 failed with error -71 12:52:12 executing program 5: perf_event_open(&(0x7f00000000c0)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) setsockopt$IP_VS_SO_SET_FLUSH(0xffffffffffffffff, 0x0, 0x485, 0x0, 0x0) r0 = openat$bsg(0xffffff9c, 0x0, 0x200, 0x0) prctl$PR_TASK_PERF_EVENTS_ENABLE(0x20) r1 = socket$netlink(0x10, 0x3, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0, 0x0}, &(0x7f0000cab000)=0xc) fcntl$setlease(0xffffffffffffffff, 0x400, 0x1) setregid(0x0, r2) setgid(r2) sendmsg$NLBL_UNLABEL_C_STATICREMOVE(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000040), 0xc, &(0x7f0000000080)={&(0x7f0000000500)=ANY=[@ANYBLOB='\x00\x00\x00\x00\x00\x00\x00', @ANYRES16=0x0, @ANYBLOB="000227bd7000fddbdf250400000005000100000000000500010001000000080005007f00000114000300fe80000000000000000000000000002814000300fc00000000000000000000000000000161fc06006970365f76746930000000000000000014000300fc0200"/118], 0x7c}, 0x1, 0x0, 0x0, 0x1c810}, 0x1) sendmsg$NLBL_UNLABEL_C_STATICLIST(r0, &(0x7f0000000340)={&(0x7f0000000180)={0x10, 0x0, 0x0, 0xffffffffffffffff}, 0xc, &(0x7f00000001c0)={&(0x7f0000000400)=ANY=[@ANYBLOB, @ANYRES64=r2, @ANYBLOB="000229bd7000ffdbdf250500000014000300fc0200000000000000000000000000000500010001000000200007007379bf13f26f5f753a6f626a6563745f723a77746d705f743a7330001400030027080000000000000000000000000000080004000a010101f9ff0200fc0200000000000000000000000000009dfe3d025c46809c92cbb09400687372300000000000000000000000002800070073797374656d5f753a6f626a6563745f723a63726173685f6465766963655f743a73300005"], 0xd8}, 0x1, 0x0, 0x0, 0x40800}, 0x4) clone(0x20002004ffc, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) exit_group(0x0) mkdir(&(0x7f00000003c0)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000240)='./file0\x00', &(0x7f0000000200)='cgroup2\x00', 0x0, 0x0) r3 = open(&(0x7f0000000380)='./file0\x00', 0x0, 0x0) r4 = openat$cgroup_subtree(r3, &(0x7f0000000080), 0x2, 0x0) write$cgroup_subtree(r4, &(0x7f00000000c0)={[{0x2d, 'pids'}]}, 0x7) 12:52:12 executing program 1: r0 = io_uring_setup(0x2832, &(0x7f0000000000)) r1 = eventfd2(0x0, 0x80800) io_uring_register$IORING_REGISTER_FILES(r0, 0x2, &(0x7f00000000c0)=[0xffffffffffffffff], 0x1) io_uring_register$IORING_REGISTER_FILES_UPDATE(r0, 0x6, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)=[r1]}, 0x1) [ 680.449252][T10139] usb 5-1: USB disconnect, device number 9 12:52:12 executing program 3: close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) r0 = openat$6lowpan_enable(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) lseek(r0, 0x0, 0x0) [ 680.825553][T10139] usb 5-1: new high-speed USB device number 10 using dummy_hcd [ 681.065506][T10139] usb 5-1: Using ep0 maxpacket: 8 [ 681.185806][T10139] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has an invalid bInterval 0, changing to 7 [ 681.198065][T10139] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has invalid wMaxPacketSize 0 [ 681.208851][T10139] usb 5-1: config 0 interface 0 altsetting 0 has 1 endpoint descriptor, different from the interface descriptor's value: 9 [ 681.222354][T10139] usb 5-1: New USB device found, idVendor=05ac, idProduct=0265, bcdDevice= 0.00 [ 681.231991][T10139] usb 5-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 681.242227][T10139] usb 5-1: config 0 descriptor?? [ 681.934593][T10393] usb 5-1: USB disconnect, device number 10 12:52:14 executing program 4: r0 = syz_usb_connect$hid(0x0, 0x36, &(0x7f0000000180)={{0x12, 0x1, 0x0, 0x0, 0x0, 0x0, 0x8, 0x5ac, 0x265, 0x0, 0x0, 0x0, 0x0, 0x1, [{{0x9, 0x2, 0x24, 0x1, 0x0, 0x0, 0x0, 0x0, [{{0x9, 0x4, 0x0, 0x0, 0x9, 0x3, 0x0, 0x0, 0x0, {0x9, 0x21, 0x0, 0x0, 0x1, {0x22, 0x29}}}}]}}]}}, 0x0) syz_usb_control_io$hid(r0, 0x0, 0x0) syz_usb_control_io(r0, &(0x7f00000003c0)={0x2c, &(0x7f0000000200)=ANY=[@ANYBLOB='\x00\x00,'], 0x0, 0x0, 0x0, 0x0}, 0x0) 12:52:14 executing program 5: perf_event_open(&(0x7f00000000c0)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) setsockopt$IP_VS_SO_SET_FLUSH(0xffffffffffffffff, 0x0, 0x485, 0x0, 0x0) r0 = openat$bsg(0xffffff9c, 0x0, 0x200, 0x0) prctl$PR_TASK_PERF_EVENTS_ENABLE(0x20) r1 = socket$netlink(0x10, 0x3, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0, 0x0}, &(0x7f0000cab000)=0xc) fcntl$setlease(0xffffffffffffffff, 0x400, 0x1) setregid(0x0, r2) setgid(r2) sendmsg$NLBL_UNLABEL_C_STATICREMOVE(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000040), 0xc, &(0x7f0000000080)={&(0x7f0000000500)=ANY=[@ANYBLOB='\x00\x00\x00\x00\x00\x00\x00', @ANYRES16=0x0, @ANYBLOB="000227bd7000fddbdf250400000005000100000000000500010001000000080005007f00000114000300fe80000000000000000000000000002814000300fc00000000000000000000000000000161fc06006970365f76746930000000000000000014000300fc0200"/118], 0x7c}, 0x1, 0x0, 0x0, 0x1c810}, 0x1) sendmsg$NLBL_UNLABEL_C_STATICLIST(r0, &(0x7f0000000340)={&(0x7f0000000180)={0x10, 0x0, 0x0, 0xffffffffffffffff}, 0xc, &(0x7f00000001c0)={&(0x7f0000000400)=ANY=[@ANYBLOB, @ANYRES64=r2, @ANYBLOB="000229bd7000ffdbdf250500000014000300fc0200000000000000000000000000000500010001000000200007007379bf13f26f5f753a6f626a6563745f723a77746d705f743a7330001400030027080000000000000000000000000000080004000a010101f9ff0200fc0200000000000000000000000000009dfe3d025c46809c92cbb09400687372300000000000000000000000002800070073797374656d5f753a6f626a6563745f723a63726173685f6465766963655f743a73300005"], 0xd8}, 0x1, 0x0, 0x0, 0x40800}, 0x4) clone(0x20002004ffc, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) exit_group(0x0) mkdir(&(0x7f00000003c0)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000240)='./file0\x00', &(0x7f0000000200)='cgroup2\x00', 0x0, 0x0) r3 = open(&(0x7f0000000380)='./file0\x00', 0x0, 0x0) r4 = openat$cgroup_subtree(r3, &(0x7f0000000080), 0x2, 0x0) write$cgroup_subtree(r4, &(0x7f00000000c0)={[{0x2d, 'pids'}]}, 0x7) 12:52:14 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket$inet_tcp(0x2, 0x1, 0x0) getsockopt$inet_tcp_buf(r1, 0x6, 0xd, &(0x7f0000000200)=""/211, &(0x7f0000000000)=0xd3) 12:52:14 executing program 1: r0 = open(&(0x7f00000000c0)='./bus\x00', 0x1031fe, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) write$FUSE_NOTIFY_DELETE(r0, &(0x7f0000000200)=ANY=[@ANYRES64, @ANYRESDEC=r1], 0x1f) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sendfile(r0, r0, &(0x7f00000001c0), 0x8080fffffffe) r3 = socket(0x2, 0x3, 0xff) r4 = dup(r3) connect$inet(r4, &(0x7f0000000040)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x1e}}, 0x10) r5 = dup(r3) r6 = open(&(0x7f0000000440)='./bus\x00', 0x0, 0x0) r7 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r7, 0x0) preadv(r7, &(0x7f0000000280), 0x18, 0xd9f, 0x0) sendfile(r5, r6, 0x0, 0x8000fffffffe) creat(&(0x7f0000000040)='./bus\x00', 0x0) 12:52:14 executing program 3: close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) r0 = openat$6lowpan_enable(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) lseek(r0, 0x0, 0x0) 12:52:14 executing program 0: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x380000d, 0x12, r1, 0x0) preadv(r0, &(0x7f0000000280)=[{0x0, 0xfffffffffffffd2f}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) r2 = socket(0x10, 0x803, 0x0) sendto(r2, &(0x7f0000cfefee)="120000001200e7ef007b00000000000000a1", 0x12, 0x0, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000140)={0x0, 0x0, &(0x7f00000006c0)={0x0, 0x34}}, 0x0) recvmmsg(r2, &(0x7f00000037c0)=[{{&(0x7f00000004c0)=@ethernet={0x0, @random}, 0x374, &(0x7f0000000380)=[{&(0x7f0000000040)=""/95, 0x234}, {&(0x7f0000000140)=""/85, 0x244}, {&(0x7f0000000fc0)=""/4096, 0xf2}, {&(0x7f0000000400)=""/106, 0x632}, {&(0x7f0000000740)=""/73, 0x3d8}, {&(0x7f0000000200)=""/77, 0x4d}, {&(0x7f00000007c0)=""/154, 0x40d}, {&(0x7f0000000000)=""/22, 0x2}], 0x81, &(0x7f0000000600)=""/191, 0x41}}], 0x4000000000003b4, 0x0, &(0x7f0000003700)={0x77359400}) 12:52:14 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket$inet_tcp(0x2, 0x1, 0x0) getsockopt$inet_tcp_buf(r1, 0x6, 0xd, &(0x7f0000000200)=""/211, &(0x7f0000000000)=0xd3) 12:52:14 executing program 3: close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) r0 = openat$6lowpan_enable(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) lseek(r0, 0x0, 0x0) 12:52:14 executing program 0: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x380000d, 0x12, r1, 0x0) preadv(r0, &(0x7f0000000280)=[{0x0, 0xfffffffffffffd2f}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) r2 = socket(0x10, 0x803, 0x0) sendto(r2, &(0x7f0000cfefee)="120000001200e7ef007b00000000000000a1", 0x12, 0x0, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000140)={0x0, 0x0, &(0x7f00000006c0)={0x0, 0x34}}, 0x0) recvmmsg(r2, &(0x7f00000037c0)=[{{&(0x7f00000004c0)=@ethernet={0x0, @random}, 0x374, &(0x7f0000000380)=[{&(0x7f0000000040)=""/95, 0x234}, {&(0x7f0000000140)=""/85, 0x244}, {&(0x7f0000000fc0)=""/4096, 0xf2}, {&(0x7f0000000400)=""/106, 0x632}, {&(0x7f0000000740)=""/73, 0x3d8}, {&(0x7f0000000200)=""/77, 0x4d}, {&(0x7f00000007c0)=""/154, 0x40d}, {&(0x7f0000000000)=""/22, 0x2}], 0x81, &(0x7f0000000600)=""/191, 0x41}}], 0x4000000000003b4, 0x0, &(0x7f0000003700)={0x77359400}) [ 682.560848][ T36] audit: type=1804 audit(1630587134.933:261): pid=5412 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/542/bus" dev="sda1" ino=15031 res=1 errno=0 12:52:15 executing program 2: mkdir(&(0x7f0000000180)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000000)='./file0\x00', &(0x7f0000000040)='devtmpfs\x00', 0x0, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000240)=ANY=[@ANYBLOB='lowerdir=.:file0']) r0 = open$dir(&(0x7f0000000040)='./file0\x00', 0x0, 0x0) lseek(r0, 0x0, 0x0) 12:52:15 executing program 5: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000480)={0xd, 0x4, &(0x7f0000000040)=@framed={{}, [@call={0x85, 0x0, 0x0, 0x8f}]}, &(0x7f0000000000)='syzkaller\x00', 0x5, 0xd6, &(0x7f0000000300)=""/214, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x74) 12:52:15 executing program 1: r0 = open(&(0x7f00000000c0)='./bus\x00', 0x1031fe, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) write$FUSE_NOTIFY_DELETE(r0, &(0x7f0000000200)=ANY=[@ANYRES64, @ANYRESDEC=r1], 0x1f) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sendfile(r0, r0, &(0x7f00000001c0), 0x8080fffffffe) r3 = socket(0x2, 0x3, 0xff) r4 = dup(r3) connect$inet(r4, &(0x7f0000000040)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x1e}}, 0x10) r5 = dup(r3) r6 = open(&(0x7f0000000440)='./bus\x00', 0x0, 0x0) r7 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r7, 0x0) preadv(r7, &(0x7f0000000280), 0x18, 0xd9f, 0x0) sendfile(r5, r6, 0x0, 0x8000fffffffe) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 682.686014][ T36] audit: type=1804 audit(1630587135.013:262): pid=5415 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=ToMToU comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/542/bus" dev="sda1" ino=15031 res=1 errno=0 [ 682.782726][ T36] audit: type=1804 audit(1630587135.053:263): pid=5400 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/542/bus" dev="sda1" ino=15031 res=1 errno=0 [ 682.814141][ T36] audit: type=1804 audit(1630587135.053:264): pid=5400 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=ToMToU comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/542/bus" dev="sda1" ino=15031 res=1 errno=0 [ 682.816612][T10431] usb 5-1: new high-speed USB device number 11 using dummy_hcd [ 682.909512][ T36] audit: type=1804 audit(1630587135.283:265): pid=5434 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/543/bus" dev="sda1" ino=14245 res=1 errno=0 [ 683.015786][ T36] audit: type=1804 audit(1630587135.393:266): pid=5435 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=ToMToU comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/543/bus" dev="sda1" ino=14245 res=1 errno=0 [ 683.105321][T10431] usb 5-1: Using ep0 maxpacket: 8 [ 683.225452][T10431] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has an invalid bInterval 0, changing to 7 [ 683.236494][T10431] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has invalid wMaxPacketSize 0 [ 683.247566][T10431] usb 5-1: config 0 interface 0 altsetting 0 has 1 endpoint descriptor, different from the interface descriptor's value: 9 [ 683.261059][T10431] usb 5-1: New USB device found, idVendor=05ac, idProduct=0265, bcdDevice= 0.00 [ 683.270533][T10431] usb 5-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 683.279749][T10431] usb 5-1: config 0 descriptor?? [ 683.973335][T10139] usb 5-1: USB disconnect, device number 11 12:52:16 executing program 4: r0 = syz_usb_connect$hid(0x0, 0x36, &(0x7f0000000180)={{0x12, 0x1, 0x0, 0x0, 0x0, 0x0, 0x8, 0x5ac, 0x265, 0x0, 0x0, 0x0, 0x0, 0x1, [{{0x9, 0x2, 0x24, 0x1, 0x0, 0x0, 0x0, 0x0, [{{0x9, 0x4, 0x0, 0x0, 0x9, 0x3, 0x0, 0x0, 0x0, {0x9, 0x21, 0x0, 0x0, 0x1, {0x22, 0x29}}}}]}}]}}, 0x0) syz_usb_control_io$hid(r0, 0x0, 0x0) syz_usb_control_io(r0, &(0x7f00000003c0)={0x2c, &(0x7f0000000200)=ANY=[@ANYBLOB='\x00\x00,'], 0x0, 0x0, 0x0, 0x0}, 0x0) 12:52:16 executing program 3: clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) wait4(0x0, 0x0, 0x80000002, 0x0) r0 = getpid() r1 = signalfd(0xffffffffffffffff, &(0x7f0000000000), 0x8) read(r1, &(0x7f0000000740)=""/402, 0x192) ptrace(0x10, r0) 12:52:16 executing program 2: mkdir(&(0x7f0000000180)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000000)='./file0\x00', &(0x7f0000000040)='devtmpfs\x00', 0x0, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000240)=ANY=[@ANYBLOB='lowerdir=.:file0']) r0 = open$dir(&(0x7f0000000040)='./file0\x00', 0x0, 0x0) lseek(r0, 0x0, 0x0) 12:52:16 executing program 5: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000480)={0xd, 0x4, &(0x7f0000000040)=@framed={{}, [@call={0x85, 0x0, 0x0, 0x8f}]}, &(0x7f0000000000)='syzkaller\x00', 0x5, 0xd6, &(0x7f0000000300)=""/214, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x74) 12:52:16 executing program 0: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x380000d, 0x12, r1, 0x0) preadv(r0, &(0x7f0000000280)=[{0x0, 0xfffffffffffffd2f}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) r2 = socket(0x10, 0x803, 0x0) sendto(r2, &(0x7f0000cfefee)="120000001200e7ef007b00000000000000a1", 0x12, 0x0, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000140)={0x0, 0x0, &(0x7f00000006c0)={0x0, 0x34}}, 0x0) recvmmsg(r2, &(0x7f00000037c0)=[{{&(0x7f00000004c0)=@ethernet={0x0, @random}, 0x374, &(0x7f0000000380)=[{&(0x7f0000000040)=""/95, 0x234}, {&(0x7f0000000140)=""/85, 0x244}, {&(0x7f0000000fc0)=""/4096, 0xf2}, {&(0x7f0000000400)=""/106, 0x632}, {&(0x7f0000000740)=""/73, 0x3d8}, {&(0x7f0000000200)=""/77, 0x4d}, {&(0x7f00000007c0)=""/154, 0x40d}, {&(0x7f0000000000)=""/22, 0x2}], 0x81, &(0x7f0000000600)=""/191, 0x41}}], 0x4000000000003b4, 0x0, &(0x7f0000003700)={0x77359400}) 12:52:16 executing program 1: r0 = open(&(0x7f00000000c0)='./bus\x00', 0x1031fe, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) write$FUSE_NOTIFY_DELETE(r0, &(0x7f0000000200)=ANY=[@ANYRES64, @ANYRESDEC=r1], 0x1f) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sendfile(r0, r0, &(0x7f00000001c0), 0x8080fffffffe) r3 = socket(0x2, 0x3, 0xff) r4 = dup(r3) connect$inet(r4, &(0x7f0000000040)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x1e}}, 0x10) r5 = dup(r3) r6 = open(&(0x7f0000000440)='./bus\x00', 0x0, 0x0) r7 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r7, 0x0) preadv(r7, &(0x7f0000000280), 0x18, 0xd9f, 0x0) sendfile(r5, r6, 0x0, 0x8000fffffffe) creat(&(0x7f0000000040)='./bus\x00', 0x0) 12:52:16 executing program 5: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000480)={0xd, 0x4, &(0x7f0000000040)=@framed={{}, [@call={0x85, 0x0, 0x0, 0x8f}]}, &(0x7f0000000000)='syzkaller\x00', 0x5, 0xd6, &(0x7f0000000300)=""/214, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x74) 12:52:17 executing program 2: mkdir(&(0x7f0000000180)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000000)='./file0\x00', &(0x7f0000000040)='devtmpfs\x00', 0x0, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000240)=ANY=[@ANYBLOB='lowerdir=.:file0']) r0 = open$dir(&(0x7f0000000040)='./file0\x00', 0x0, 0x0) lseek(r0, 0x0, 0x0) 12:52:17 executing program 5: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000480)={0xd, 0x4, &(0x7f0000000040)=@framed={{}, [@call={0x85, 0x0, 0x0, 0x8f}]}, &(0x7f0000000000)='syzkaller\x00', 0x5, 0xd6, &(0x7f0000000300)=""/214, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x74) 12:52:17 executing program 0: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x380000d, 0x12, r1, 0x0) preadv(r0, &(0x7f0000000280)=[{0x0, 0xfffffffffffffd2f}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) r2 = socket(0x10, 0x803, 0x0) sendto(r2, &(0x7f0000cfefee)="120000001200e7ef007b00000000000000a1", 0x12, 0x0, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000140)={0x0, 0x0, &(0x7f00000006c0)={0x0, 0x34}}, 0x0) recvmmsg(r2, &(0x7f00000037c0)=[{{&(0x7f00000004c0)=@ethernet={0x0, @random}, 0x374, &(0x7f0000000380)=[{&(0x7f0000000040)=""/95, 0x234}, {&(0x7f0000000140)=""/85, 0x244}, {&(0x7f0000000fc0)=""/4096, 0xf2}, {&(0x7f0000000400)=""/106, 0x632}, {&(0x7f0000000740)=""/73, 0x3d8}, {&(0x7f0000000200)=""/77, 0x4d}, {&(0x7f00000007c0)=""/154, 0x40d}, {&(0x7f0000000000)=""/22, 0x2}], 0x81, &(0x7f0000000600)=""/191, 0x41}}], 0x4000000000003b4, 0x0, &(0x7f0000003700)={0x77359400}) 12:52:17 executing program 3: clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) wait4(0x0, 0x0, 0x80000002, 0x0) r0 = getpid() r1 = signalfd(0xffffffffffffffff, &(0x7f0000000000), 0x8) read(r1, &(0x7f0000000740)=""/402, 0x192) ptrace(0x10, r0) [ 684.643698][ T36] audit: type=1804 audit(1630587137.014:267): pid=5476 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/544/bus" dev="sda1" ino=15044 res=1 errno=0 12:52:17 executing program 0: prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x40900, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = gettid() wait4(0x0, 0x0, 0x40000000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0}, {0x0}, {0x0}, {&(0x7f0000000180)="82bb7102cc6509f63760ce03f12c2baf577e6f0503c9ca91e9a868377ce26dc445a7443fdcde8856729a952b000000000000000000000093d5b8c2fc903c2b54706c05e4cb2e2875107608f9143f299d8e3f78f4bf076484885fd4089cb084607435b77c7f44cf0783279a494c8e4eba955b16e77f57966d4ba78fccba20bcae2b6f577b36b79f72f77e153f55e4fa6ad43af0d450a8f2c60baabf84ab4350874b05f4635c7449bac4383622ae4da09326e51bc3130b44a9df870700656b60912ff6bdb6", 0xc4}], 0x4, 0x0) ptrace$setopts(0x4206, r0, 0x0, 0x0) tkill(r0, 0x2c) ptrace$cont(0x18, r0, 0x0, 0x0) ptrace$setregs(0xd, r0, 0x0, &(0x7f0000000080)) ptrace$cont(0x9, r0, 0x0, 0x0) [ 684.758192][ T36] audit: type=1804 audit(1630587137.084:268): pid=5481 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=ToMToU comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/544/bus" dev="sda1" ino=15044 res=1 errno=0 [ 684.838675][ T5] usb 5-1: new high-speed USB device number 12 using dummy_hcd [ 685.105276][ T5] usb 5-1: Using ep0 maxpacket: 8 [ 685.235564][ T5] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has an invalid bInterval 0, changing to 7 [ 685.246585][ T5] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x81 has invalid wMaxPacketSize 0 [ 685.258092][ T5] usb 5-1: config 0 interface 0 altsetting 0 has 1 endpoint descriptor, different from the interface descriptor's value: 9 [ 685.271503][ T5] usb 5-1: New USB device found, idVendor=05ac, idProduct=0265, bcdDevice= 0.00 [ 685.281027][ T5] usb 5-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 685.293458][ T5] usb 5-1: config 0 descriptor?? [ 685.475873][ T3242] ieee802154 phy0 wpan0: encryption failed: -22 [ 685.482177][ T3242] ieee802154 phy1 wpan1: encryption failed: -22 [ 685.994108][T10393] usb 5-1: USB disconnect, device number 12 12:52:18 executing program 1: r0 = open(&(0x7f00000000c0)='./bus\x00', 0x1031fe, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) write$FUSE_NOTIFY_DELETE(r0, &(0x7f0000000200)=ANY=[@ANYRES64, @ANYRESDEC=r1], 0x1f) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sendfile(r0, r0, &(0x7f00000001c0), 0x8080fffffffe) r3 = socket(0x2, 0x3, 0xff) r4 = dup(r3) connect$inet(r4, &(0x7f0000000040)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x1e}}, 0x10) r5 = dup(r3) r6 = open(&(0x7f0000000440)='./bus\x00', 0x0, 0x0) r7 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r7, 0x0) preadv(r7, &(0x7f0000000280), 0x18, 0xd9f, 0x0) sendfile(r5, r6, 0x0, 0x8000fffffffe) creat(&(0x7f0000000040)='./bus\x00', 0x0) 12:52:18 executing program 2: mkdir(&(0x7f0000000180)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000000)='./file0\x00', &(0x7f0000000040)='devtmpfs\x00', 0x0, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000240)=ANY=[@ANYBLOB='lowerdir=.:file0']) r0 = open$dir(&(0x7f0000000040)='./file0\x00', 0x0, 0x0) lseek(r0, 0x0, 0x0) 12:52:18 executing program 5: r0 = perf_event_open$cgroup(&(0x7f0000000040)={0x2, 0x80, 0x14, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f00000000c0)='{&[:^]%!{&(/##^&\x00') 12:52:18 executing program 3: clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) wait4(0x0, 0x0, 0x80000002, 0x0) r0 = getpid() r1 = signalfd(0xffffffffffffffff, &(0x7f0000000000), 0x8) read(r1, &(0x7f0000000740)=""/402, 0x192) ptrace(0x10, r0) 12:52:18 executing program 4: r0 = socket$inet(0x2, 0x4000000000000001, 0x0) setsockopt$sock_int(r0, 0x1, 0x2c, &(0x7f0000000140)=0x4, 0x4) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000480)={0x0, 0x0}, 0x10) 12:52:18 executing program 2: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000040)={0x0, 0x0, 0x4, r2}) r3 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000080)={0x0, 0x0, 0x0, r3}) 12:52:19 executing program 5: r0 = perf_event_open$cgroup(&(0x7f0000000040)={0x2, 0x80, 0x14, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f00000000c0)='{&[:^]%!{&(/##^&\x00') 12:52:19 executing program 3: clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) wait4(0x0, 0x0, 0x80000002, 0x0) r0 = getpid() r1 = signalfd(0xffffffffffffffff, &(0x7f0000000000), 0x8) read(r1, &(0x7f0000000740)=""/402, 0x192) ptrace(0x10, r0) 12:52:19 executing program 4: r0 = socket$inet(0x2, 0x4000000000000001, 0x0) setsockopt$sock_int(r0, 0x1, 0x2c, &(0x7f0000000140)=0x4, 0x4) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000480)={0x0, 0x0}, 0x10) [ 686.643337][ T36] audit: type=1804 audit(1630587139.014:269): pid=5534 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/545/bus" dev="sda1" ino=15085 res=1 errno=0 12:52:19 executing program 4: r0 = socket$inet(0x2, 0x4000000000000001, 0x0) setsockopt$sock_int(r0, 0x1, 0x2c, &(0x7f0000000140)=0x4, 0x4) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000480)={0x0, 0x0}, 0x10) 12:52:19 executing program 3: r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r0, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000240)=@newlink={0x40, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x14, 0x12, 0x0, 0x1, @bond={{0x9}, {0x4}}}, @IFLA_ADDRESS={0xa}]}, 0x40}}, 0x0) [ 686.738084][ T36] audit: type=1804 audit(1630587139.114:270): pid=5547 uid=0 auid=4294967295 ses=4294967295 subj=_ op=invalid_pcr cause=ToMToU comm="syz-executor.1" name="/root/syzkaller-testdir888788481/syzkaller.FlGCPd/545/bus" dev="sda1" ino=15085 res=1 errno=0 12:52:20 executing program 0: prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x40900, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = gettid() wait4(0x0, 0x0, 0x40000000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0}, {0x0}, {0x0}, {&(0x7f0000000180)="82bb7102cc6509f63760ce03f12c2baf577e6f0503c9ca91e9a868377ce26dc445a7443fdcde8856729a952b000000000000000000000093d5b8c2fc903c2b54706c05e4cb2e2875107608f9143f299d8e3f78f4bf076484885fd4089cb084607435b77c7f44cf0783279a494c8e4eba955b16e77f57966d4ba78fccba20bcae2b6f577b36b79f72f77e153f55e4fa6ad43af0d450a8f2c60baabf84ab4350874b05f4635c7449bac4383622ae4da09326e51bc3130b44a9df870700656b60912ff6bdb6", 0xc4}], 0x4, 0x0) ptrace$setopts(0x4206, r0, 0x0, 0x0) tkill(r0, 0x2c) ptrace$cont(0x18, r0, 0x0, 0x0) ptrace$setregs(0xd, r0, 0x0, &(0x7f0000000080)) ptrace$cont(0x9, r0, 0x0, 0x0) 12:52:20 executing program 5: r0 = perf_event_open$cgroup(&(0x7f0000000040)={0x2, 0x80, 0x14, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f00000000c0)='{&[:^]%!{&(/##^&\x00') 12:52:20 executing program 2: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000040)={0x0, 0x0, 0x4, r2}) r3 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000080)={0x0, 0x0, 0x0, r3}) 12:52:20 executing program 4: r0 = socket$inet(0x2, 0x4000000000000001, 0x0) setsockopt$sock_int(r0, 0x1, 0x2c, &(0x7f0000000140)=0x4, 0x4) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000480)={0x0, 0x0}, 0x10) 12:52:20 executing program 3: r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r0, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000240)=@newlink={0x40, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x14, 0x12, 0x0, 0x1, @bond={{0x9}, {0x4}}}, @IFLA_ADDRESS={0xa}]}, 0x40}}, 0x0) 12:52:20 executing program 1: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000040)={0x0, 0x0, 0x4, r2}) r3 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000080)={0x0, 0x0, 0x0, r3}) 12:52:20 executing program 3: r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r0, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000240)=@newlink={0x40, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x14, 0x12, 0x0, 0x1, @bond={{0x9}, {0x4}}}, @IFLA_ADDRESS={0xa}]}, 0x40}}, 0x0) 12:52:20 executing program 5: r0 = perf_event_open$cgroup(&(0x7f0000000040)={0x2, 0x80, 0x14, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f00000000c0)='{&[:^]%!{&(/##^&\x00') 12:52:20 executing program 4: r0 = socket$inet6(0xa, 0x1, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getsockopt$inet6_buf(r0, 0x29, 0x1e, &(0x7f0000019100)=""/102400, &(0x7f0000000040)=0x19000) 12:52:20 executing program 3: r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r0, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000240)=@newlink={0x40, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x14, 0x12, 0x0, 0x1, @bond={{0x9}, {0x4}}}, @IFLA_ADDRESS={0xa}]}, 0x40}}, 0x0) 12:52:20 executing program 2: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000040)={0x0, 0x0, 0x4, r2}) r3 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000080)={0x0, 0x0, 0x0, r3}) 12:52:20 executing program 5: r0 = openat$vnet(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) ioctl$VHOST_NET_SET_BACKEND(r0, 0x4008af25, &(0x7f00000000c0)) 12:52:23 executing program 0: prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x40900, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = gettid() wait4(0x0, 0x0, 0x40000000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0}, {0x0}, {0x0}, {&(0x7f0000000180)="82bb7102cc6509f63760ce03f12c2baf577e6f0503c9ca91e9a868377ce26dc445a7443fdcde8856729a952b000000000000000000000093d5b8c2fc903c2b54706c05e4cb2e2875107608f9143f299d8e3f78f4bf076484885fd4089cb084607435b77c7f44cf0783279a494c8e4eba955b16e77f57966d4ba78fccba20bcae2b6f577b36b79f72f77e153f55e4fa6ad43af0d450a8f2c60baabf84ab4350874b05f4635c7449bac4383622ae4da09326e51bc3130b44a9df870700656b60912ff6bdb6", 0xc4}], 0x4, 0x0) ptrace$setopts(0x4206, r0, 0x0, 0x0) tkill(r0, 0x2c) ptrace$cont(0x18, r0, 0x0, 0x0) ptrace$setregs(0xd, r0, 0x0, &(0x7f0000000080)) ptrace$cont(0x9, r0, 0x0, 0x0) 12:52:23 executing program 1: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000040)={0x0, 0x0, 0x4, r2}) r3 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000080)={0x0, 0x0, 0x0, r3}) 12:52:23 executing program 4: r0 = socket$inet6(0xa, 0x1, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getsockopt$inet6_buf(r0, 0x29, 0x1e, &(0x7f0000019100)=""/102400, &(0x7f0000000040)=0x19000) 12:52:23 executing program 3: syz_mount_image$erofs(&(0x7f0000000000), &(0x7f0000000140)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010000)="e2e1f5e09521e93c026000000c0024", 0xf, 0x400}, {&(0x7f0000000080)="030045318e21", 0x6, 0x480}], 0x0, &(0x7f0000000300)=ANY=[]) 12:52:23 executing program 5: r0 = openat$vnet(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) ioctl$VHOST_NET_SET_BACKEND(r0, 0x4008af25, &(0x7f00000000c0)) 12:52:23 executing program 2: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000040)={0x0, 0x0, 0x4, r2}) r3 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000080)={0x0, 0x0, 0x0, r3}) 12:52:23 executing program 4: r0 = socket$inet6(0xa, 0x1, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getsockopt$inet6_buf(r0, 0x29, 0x1e, &(0x7f0000019100)=""/102400, &(0x7f0000000040)=0x19000) 12:52:23 executing program 1: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000040)={0x0, 0x0, 0x4, r2}) r3 = eventfd(0x0) ioctl$KVM_IOEVENTFD(r1, 0x4040ae79, &(0x7f0000000080)={0x0, 0x0, 0x0, r3}) 12:52:23 executing program 2: r0 = 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, 0xfffffff7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_bp, 0x0, 0x0, 0x1, 0x7, 0x0, 0xfffffffc}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x3) shmat(0x0, &(0x7f0000000000/0x13000)=nil, 0x4000) shmctl$IPC_STAT(0x0, 0x2, 0x0) r1 = shmget$private(0x0, 0x1000, 0x54001800, &(0x7f0000fff000/0x1000)=nil) shmat(r1, &(0x7f0000000000/0x4000)=nil, 0xffffffffffffdfff) shmat(r1, &(0x7f0000000000/0x13000)=nil, 0x4000) r2 = shmget(0x2, 0x1000, 0xa18, &(0x7f0000ffd000/0x1000)=nil) shmctl$IPC_RMID(r2, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) shmctl$IPC_RMID(0x0, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) write$P9_RLERROR(0xffffffffffffffff, &(0x7f0000000700)=ANY=[@ANYBLOB="bc7b9d7b18d38923cdcf5c7256a1e7549ec2365959effbd933decf4135e9050b26162bfaeb7ab057d8ab95ccd5d03f7c835ec3135ec7c5661c8bc4d50bb0671568050decb983065ddae3e293a70b02647205bc1dd3565bf4b8836c2e031e27097cfb56b0f7a2990db7d97b42c297020101e316814ed0beb884c8f517d65bbbb66dc83d7a8f12bfc2387e0521fb8207862519ef0d521c5ec7fc2e2e904c842c215338f0a549f40f24f1648acda00ee8a0b3130ae29ca2728f0e039430ac80f9f285f8a888eb1d6b262e86023dbb430000000000000005ab03e4f8c746c15095f528460fd163c5afdfc176beb38908000000eae7f772f68b2f0798faa71e5388e19f345f2921bcfdeb7f9fe7c753a84be46e842fc15bd785957d47b7e8e5f20c5c879e754c35ce9d51caac508c3ad4e3faf3aeecc1c7ec9dd155cd6263f1cb3846f73babdbb709fb8eb0d6a502cf55e1110895ebe4f9a1c3eb0000ae1325ccc2f67e8b3b2e42964eb575158c983a734f15f152f232b59a0af3c85372d7a1e869788772e764eb62c88aac66bff68a6a665749710386442d606f54464fcf9ed000c153182034ffe9d1452b975340a3ea5a05a378a24459632ee88db7ac3043867067c090f46d6f4bd10fcd882c587b694cab835c638e3a5243323203131248fa578dceb4051afa45f84ee7d8eba7aff0b7d0baa1c5e1d33d75e5e1a8ba746c9d6b9d3773a2c67773755a21bdc98410eb0a48d47d06abea67a7d8d44f98064360eac40cb3d4f86af94dc4bc023967b7e61ff067e19da31899c6733943ef751a7957303e00c351505380af41e43f655326023943434ec827fd72229b4ac767bb94be65be3c2da8012621dfac73a6583641858b7f45bcd0a2aab2f258d9a84987bfa9b64aa31110d3cc62ecee7e647f69d62df7149ce39c34f6ec0cec272fe0556c00000000000c330b3693bc105c10ef0d7139c7c132b422c983f125710f6e14a3e07b36ff62077c1f513ab8779a389eae353b941af32f10d71993fe336b1f739d382279efc15539d556897c9aa92a26a29da6b82fb283e2248fca05d5a79e0411a307", @ANYRESOCT, @ANYRES16], 0xf) shmat(r1, &(0x7f00008a7000/0x1000)=nil, 0x0) shmctl$SHM_UNLOCK(0x0, 0xc) r3 = socket$xdp(0x2c, 0x3, 0x0) setsockopt$XDP_UMEM_REG(r3, 0x11b, 0x4, &(0x7f00000000c0)={&(0x7f0000000000)=""/5, 0x222000, 0x1000}, 0x18) setsockopt$XDP_UMEM_REG(0xffffffffffffffff, 0x11b, 0x4, &(0x7f0000000100)={&(0x7f0000000040)=""/34, 0x20000, 0x0, 0x9}, 0x20) shmat(0x0, &(0x7f0000ffc000/0x4000)=nil, 0x1000) ioctl$KDDISABIO(r0, 0x4b37) mbind(&(0x7f000009d000/0x4000)=nil, 0x4000, 0x0, 0x0, 0x0, 0x10000000002) 12:52:23 executing program 5: r0 = openat$vnet(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) ioctl$VHOST_NET_SET_BACKEND(r0, 0x4008af25, &(0x7f00000000c0)) [ 690.910901][ T5634] loop3: detected capacity change from 0 to 4 12:52:23 executing program 4: r0 = socket$inet6(0xa, 0x1, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getsockopt$inet6_buf(r0, 0x29, 0x1e, &(0x7f0000019100)=""/102400, &(0x7f0000000040)=0x19000) [ 690.959033][ T5634] erofs: (device loop3): erofs_fc_fill_super: rootino(nid 36) is not a directory(i_mode 20616) 12:52:23 executing program 4: clock_settime(0x0, &(0x7f0000000100)={0x77359400}) [ 691.055357][ T5634] loop3: detected capacity change from 0 to 4 [ 691.085742][ T5634] erofs: (device loop3): erofs_fc_fill_super: rootino(nid 36) is not a directory(i_mode 20616) [ 691.109545][ T36] audit: type=1800 audit(1630587143.484:271): pid=5653 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed comm="syz-executor.2" name="SYSV00000000" dev="hugetlbfs" ino=6 res=0 errno=0 03:33:22 executing program 0: prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x40900, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = gettid() wait4(0x0, 0x0, 0x40000000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0}, {0x0}, {0x0}, {&(0x7f0000000180)="82bb7102cc6509f63760ce03f12c2baf577e6f0503c9ca91e9a868377ce26dc445a7443fdcde8856729a952b000000000000000000000093d5b8c2fc903c2b54706c05e4cb2e2875107608f9143f299d8e3f78f4bf076484885fd4089cb084607435b77c7f44cf0783279a494c8e4eba955b16e77f57966d4ba78fccba20bcae2b6f577b36b79f72f77e153f55e4fa6ad43af0d450a8f2c60baabf84ab4350874b05f4635c7449bac4383622ae4da09326e51bc3130b44a9df870700656b60912ff6bdb6", 0xc4}], 0x4, 0x0) ptrace$setopts(0x4206, r0, 0x0, 0x0) tkill(r0, 0x2c) ptrace$cont(0x18, r0, 0x0, 0x0) ptrace$setregs(0xd, r0, 0x0, &(0x7f0000000080)) ptrace$cont(0x9, r0, 0x0, 0x0) 03:33:22 executing program 5: r0 = openat$vnet(0xffffffffffffff9c, &(0x7f0000000040), 0x2, 0x0) ioctl$VHOST_NET_SET_BACKEND(r0, 0x4008af25, &(0x7f00000000c0)) 03:33:22 executing program 1: r0 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r0, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r0, 0x0) syz_emit_ethernet(0x4a, &(0x7f0000000140)={@local, @remote, @void, {@ipv6={0x86dd, @tcp={0x0, 0x6, '\a\t\x00', 0x14, 0x6, 0x0, @remote, @mcast2, {[], {{0x0, 0x4e22, 0x41424344, 0x41424344, 0x0, 0x0, 0x5, 0x2}}}}}}}, 0x0) [ 870.732414][ C1] rcu: INFO: rcu_preempt self-detected stall on CPU [ 870.739332][ C1] rcu: 1-...!: (1 GPs behind) idle=83f/1/0x4000000000000000 softirq=75863/75864 fqs=0 [ 870.749068][ C1] (t=17963 jiffies g=98533 q=2385) [ 870.754272][ C1] rcu: rcu_preempt kthread starved for 17963 jiffies! g98533 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=0 [ 870.757577][T10393] rcu: INFO: rcu_preempt detected expedited stalls on CPUs/tasks: { [ 870.765551][ C1] rcu: Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior. [ 870.765562][ C1] rcu: RCU grace-period kthread stack dump: [ 870.765567][ C1] task:rcu_preempt state:I stack:26288 pid: 14 ppid: 2 flags:0x00004000 [ 870.765632][ C1] Call Trace: [ 870.765641][ C1] __schedule+0xbfd/0x11d0 [ 870.765668][ C1] ? __sched_text_start+0x8/0x8 [ 870.765683][ C1] ? mod_timer_pending+0x20/0x20 [ 870.765755][ C1] ? lockdep_softirqs_off+0x410/0x410 [ 870.765811][ C1] schedule+0x14b/0x210 [ 870.765827][ C1] schedule_timeout+0x1aa/0x2f0 [ 870.765843][ C1] ? console_conditional_schedule+0x40/0x40 [ 870.765859][ C1] ? update_process_times+0x200/0x200 [ 870.765873][ C1] ? prepare_to_swait_event+0x322/0x340 [ 870.765910][ C1] rcu_gp_fqs_loop+0x1fd/0x770 [ 870.765964][ C1] ? rcu_gp_init+0xda9/0x1140 [ 870.765977][ C1] ? rcu_gp_init+0x1140/0x1140 [ 870.765995][ C1] ? finish_swait+0xc2/0x1d0 [ 870.766008][ C1] rcu_gp_kthread+0xa5/0x340 [ 870.766026][ C1] ? rcu_report_qs_rsp+0x1a0/0x1a0 [ 870.766040][ C1] ? _raw_spin_unlock_irqrestore+0xc1/0x120 [ 870.766088][ C1] ? __kthread_parkme+0x166/0x1c0 [ 870.766128][ C1] kthread+0x453/0x480 [ 870.766140][ C1] ? rcu_report_qs_rsp+0x1a0/0x1a0 [ 870.766154][ C1] ? kthread_blkcg+0xd0/0xd0 [ 870.766164][ C1] ret_from_fork+0x1f/0x30 [ 870.766211][ C1] rcu: Stack dump where RCU GP kthread last ran: [ 870.766217][ C1] Sending NMI from CPU 1 to CPUs 0: [ 870.766236][ C0] NMI backtrace for cpu 0 [ 870.766246][ C0] CPU: 0 PID: 10393 Comm: kworker/0:9 Not tainted 5.14.0-syzkaller #0 [ 870.766261][ C0] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 870.766270][ C0] Workqueue: rcu_gp wait_rcu_exp_gp [ 870.766287][ C0] RIP: 0010:unwind_next_frame+0x501/0x1fa0 [ 870.766353][ C0] Code: 89 c1 48 c1 f9 02 48 c1 e8 3f 48 01 c8 48 83 e0 fe 49 8d 1c 47 48 89 d8 48 c1 e8 03 48 b9 00 00 00 00 00 fc ff df 0f b6 04 08 <84> c0 75 27 48 63 03 48 01 d8 48 8d 4b 04 4c 39 e0 4c 0f 46 f9 48 [ 870.766365][ C0] RSP: 0018:ffffc900000072e0 EFLAGS: 00000a03 [ 870.766376][ C0] RAX: 0000000000000000 RBX: ffffffff8de9477c RCX: dffffc0000000000 [ 870.766386][ C0] RDX: ffffffff8e518f6a RSI: ffffffff814dd51f RDI: 0000000000000001 [ 870.766396][ C0] RBP: ffffffff8de94778 R08: 0000000000000009 R09: ffffc90000007470 [ 870.766406][ C0] R10: fffff52000000e80 R11: 0000000000000000 R12: ffffffff814dd51e [ 870.766416][ C0] R13: ffffffff8de94784 R14: ffffffff8de94778 R15: ffffffff8de94778 [ 870.766426][ C0] FS: 0000000000000000(0000) GS:ffff8880b9c00000(0000) knlGS:0000000000000000 [ 870.766437][ C0] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 870.766463][ C0] CR2: 000000c019034000 CR3: 000000002877c000 CR4: 00000000001506f0 [ 870.766476][ C0] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 870.766484][ C0] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 870.766493][ C0] Call Trace: [ 870.766497][ C0] [ 870.766505][ C0] ? __irq_exit_rcu+0xcf/0x150 [ 870.766544][ C0] ? stack_trace_save+0x1e0/0x1e0 [ 870.766559][ C0] arch_stack_walk+0xb2/0xe0 [ 870.766596][ C0] ? __irq_exit_rcu+0xcf/0x150 [ 870.766612][ C0] stack_trace_save+0x104/0x1e0 [ 870.766626][ C0] ? stack_trace_snprint+0xe0/0xe0 [ 870.766640][ C0] ? __local_bh_enable_ip+0x13a/0x1c0 [ 870.766659][ C0] ? kfree+0xcf/0x2e0 [ 870.766700][ C0] kasan_set_track+0x3d/0x70 [ 870.766736][ C0] ? kasan_set_track+0x3d/0x70 [ 870.766748][ C0] ? kasan_set_free_info+0x1f/0x40 [ 870.766760][ C0] ? ____kasan_slab_free+0x10d/0x150 [ 870.766775][ C0] ? slab_free_freelist_hook+0x1e8/0x2a0 [ 870.766788][ C0] ? kfree+0xcf/0x2e0 [ 870.766800][ C0] ? skb_release_data+0x3c3/0x4f0 [ 870.766844][ C0] ? __kfree_skb+0x56/0x1d0 [ 870.766856][ C0] ? ip6_mc_input+0x8d0/0xd40 [ 870.766903][ C0] ? __netif_receive_skb+0x1d1/0x500 [ 870.766955][ C0] ? process_backlog+0x4d8/0x940 [ 870.766966][ C0] ? __napi_poll+0xba/0x4f0 [ 870.766979][ C0] ? net_rx_action+0x62c/0xf30 [ 870.766991][ C0] ? __do_softirq+0x372/0x783 [ 870.767003][ C0] ? __irq_exit_rcu+0xcf/0x150 [ 870.767017][ C0] ? __lock_acquire+0x6100/0x6100 [ 870.767031][ C0] ? print_irqtrace_events+0x220/0x220 [ 870.767044][ C0] ? do_raw_spin_unlock+0x134/0x8a0 [ 870.767058][ C0] ? _raw_spin_unlock_irqrestore+0x8b/0x120 [ 870.767075][ C0] ? _raw_spin_unlock_irqrestore+0xc1/0x120 [ 870.767090][ C0] ? _raw_spin_unlock+0x40/0x40 [ 870.767109][ C0] ? rcu_read_lock_sched_held+0x5d/0x110 [ 870.767123][ C0] ? __bpf_trace_rcu_stall_warning+0x10/0x10 [ 870.767136][ C0] ? trace_lock_acquire+0x59/0x190 [ 870.767150][ C0] ? debug_check_no_obj_freed+0x5a2/0x650 [ 870.767168][ C0] ? trace_lock_release+0x4f/0x150 [ 870.767181][ C0] kasan_set_free_info+0x1f/0x40 [ 870.767193][ C0] ____kasan_slab_free+0x10d/0x150 [ 870.767209][ C0] slab_free_freelist_hook+0x1e8/0x2a0 [ 870.767225][ C0] ? skb_release_data+0x3c3/0x4f0 [ 870.767238][ C0] kfree+0xcf/0x2e0 [ 870.767252][ C0] skb_release_data+0x3c3/0x4f0 [ 870.767267][ C0] ? skb_release_head_state+0x1d0/0x210 [ 870.767283][ C0] __kfree_skb+0x56/0x1d0 [ 870.767297][ C0] ip6_mc_input+0x8d0/0xd40 [ 870.767311][ C0] ? ip6_mc_input+0xd40/0xd40 [ 870.767328][ C0] ? ip6_input_finish+0x110/0x110 [ 870.767342][ C0] ? rcu_read_lock_held+0x6/0x40 [ 870.767354][ C0] ? ip6_rcv_finish_core+0x204/0x3f0 [ 870.767369][ C0] ? rcu_read_lock_held+0x6/0x40 [ 870.767382][ C0] ? ip6_rcv_finish_core+0x3f0/0x3f0 [ 870.767396][ C0] __netif_receive_skb+0x1d1/0x500 [ 870.767411][ C0] ? read_lock_is_recursive+0x10/0x10 [ 870.767425][ C0] ? nf_ingress+0x7b0/0x7b0 [ 870.767439][ C0] ? do_raw_spin_lock+0x151/0x8e0 [ 870.767452][ C0] ? __lock_acquire+0x6100/0x6100 [ 870.767465][ C0] ? __rcu_read_lock+0xb0/0xb0 [ 870.767480][ C0] ? do_raw_spin_unlock+0x134/0x8a0 [ 870.767493][ C0] ? lock_release+0x81/0x7b0 [ 870.767508][ C0] process_backlog+0x4d8/0x940 [ 870.767524][ C0] ? rps_trigger_softirq+0x230/0x230 [ 870.767535][ C0] ? virtqueue_enable_cb_prepare+0x17b/0x5c0 [ 870.767604][ C0] __napi_poll+0xba/0x4f0 [ 870.767620][ C0] net_rx_action+0x62c/0xf30 [ 870.767636][ C0] ? net_tx_action+0xa20/0xa20 [ 870.767648][ C0] ? trace_timer_cancel+0x220/0x220 [ 870.767669][ C0] __do_softirq+0x372/0x783 [ 870.767683][ C0] ? __irq_exit_rcu+0xcf/0x150 [ 870.767699][ C0] ? __entry_text_end+0x1fecc9/0x1fecc9 [ 870.767717][ C0] __irq_exit_rcu+0xcf/0x150 [ 870.767731][ C0] ? irq_exit_rcu+0x20/0x20 [ 870.767747][ C0] ? __sysvec_apic_timer_interrupt+0x116/0x270 [ 870.767785][ C0] irq_exit_rcu+0x5/0x20 [ 870.767799][ C0] sysvec_apic_timer_interrupt+0x91/0xb0 [ 870.767815][ C0] [ 870.767820][ C0] asm_sysvec_apic_timer_interrupt+0x12/0x20 [ 870.767833][ C0] RIP: 0010:console_trylock_spinning+0x31b/0x3a0 [ 870.767848][ C0] Code: 08 4d 85 ed 74 91 e8 f4 36 1a 00 fb 31 db eb 41 e8 ea 36 1a 00 e8 15 ff 7b 08 4d 85 ed 74 d1 e8 db 36 1a 00 fb bb 01 00 00 00 <48> c7 c7 80 7e 7f 8c 31 f6 ba 01 00 00 00 31 c9 41 b8 01 00 00 00 [ 870.767878][ C0] RSP: 0018:ffffc900181178e0 EFLAGS: 00000293 [ 870.767889][ C0] RAX: ffffffff8166a5a5 RBX: 0000000000000001 RCX: ffff888030d91c80 [ 870.767899][ C0] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 [ 870.767906][ C0] RBP: ffffc900181179b0 R08: ffffffff8166a562 R09: fffffbfff1bb700e [ 870.767917][ C0] R10: fffffbfff1bb700e R11: 0000000000000000 R12: 1ffff92003022f1c [ 870.767926][ C0] R13: 0000000000000200 R14: 0000000000000082 R15: dffffc0000000000 [ 870.767937][ C0] ? console_trylock_spinning+0x2d2/0x3a0 [ 870.767951][ C0] ? console_trylock_spinning+0x315/0x3a0 [ 870.767967][ C0] ? vprintk_emit+0x140/0x140 [ 870.767978][ C0] ? lock_release+0x81/0x7b0 [ 870.767990][ C0] ? lock_release+0x81/0x7b0 [ 870.768003][ C0] ? do_raw_spin_lock+0x151/0x8e0 [ 870.768016][ C0] ? __lock_acquire+0x6100/0x6100 [ 870.768030][ C0] vprintk_emit+0xa1/0x140 [ 870.768044][ C0] _printk+0xc0/0x108 [ 870.768058][ C0] ? log_buf_vmcoreinfo_setup+0x498/0x498 [ 870.768071][ C0] ? _raw_spin_unlock_irqrestore+0xc1/0x120 [ 870.768091][ C0] rcu_exp_sel_wait_wake+0x88b/0x1a00 [ 870.768111][ C0] ? __bpf_trace_rcu_stall_warning+0x10/0x10 [ 870.768126][ C0] ? read_lock_is_recursive+0x10/0x10 [ 870.768138][ C0] ? do_raw_spin_unlock+0x134/0x8a0 [ 870.768153][ C0] ? rcu_check_gp_start_stall+0x420/0x420 [ 870.768167][ C0] ? _raw_spin_unlock_irqrestore+0xc1/0x120 [ 870.768183][ C0] ? do_raw_spin_unlock+0x134/0x8a0 [ 870.768197][ C0] ? _raw_spin_unlock_irq+0x1f/0x40 [ 870.768214][ C0] process_one_work+0x853/0x1140 [ 870.768233][ C0] ? worker_detach_from_pool+0x260/0x260 [ 870.768248][ C0] ? _raw_spin_lock_irqsave+0x100/0x100 [ 870.768263][ C0] ? kthread_data+0x4d/0xc0 [ 870.768279][ C0] ? wq_worker_running+0x8b/0x140 [ 870.768292][ C0] worker_thread+0xac1/0x1320 [ 870.768311][ C0] ? __kthread_parkme+0x166/0x1c0 [ 870.768328][ C0] kthread+0x453/0x480 [ 870.768339][ C0] ? rcu_lock_release+0x20/0x20 [ 870.768351][ C0] ? kthread_blkcg+0xd0/0xd0 [ 870.768364][ C0] ret_from_fork+0x1f/0x30 [ 870.769252][ C1] NMI backtrace for cpu 1 [ 870.769263][ C1] CPU: 1 PID: 5663 Comm: syz-executor.4 Not tainted 5.14.0-syzkaller #0 [ 870.769280][ C1] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 870.769289][ C1] Call Trace: [ 870.769294][ C1] [ 870.769300][ C1] dump_stack_lvl+0x1ae/0x29f [ 870.769357][ C1] ? show_regs_print_info+0x12/0x12 [ 870.769373][ C1] ? log_buf_vmcoreinfo_setup+0x498/0x498 [ 870.769389][ C1] ? do_raw_spin_unlock+0x134/0x8a0 [ 870.769407][ C1] nmi_cpu_backtrace+0x405/0x430 [ 870.769423][ C1] ? nmi_trigger_cpumask_backtrace+0x2f0/0x2f0 [ 870.769511][ C1] ? _raw_spin_lock_irqsave+0xbf/0x100 [ 870.769541][ C1] ? _raw_spin_lock+0x40/0x40 [ 870.769555][ C1] ? arch_trigger_cpumask_backtrace+0x10/0x10 [ 870.769570][ C1] nmi_trigger_cpumask_backtrace+0x191/0x2f0 [ 870.769585][ C1] ? arch_trigger_cpumask_backtrace+0x10/0x10 [ 870.769600][ C1] rcu_dump_cpu_stacks+0x22d/0x390 [ 870.769618][ C1] rcu_sched_clock_irq+0x1dc2/0x2b40 [ 870.769632][ C1] ? __lock_acquire+0x6100/0x6100 [ 870.769646][ C1] ? trace_lock_release+0x4f/0x150 [ 870.769659][ C1] ? rcu_read_lock_sched_held+0x5d/0x110 [ 870.769672][ C1] ? rcutree_dead_cpu+0x20/0x20 [ 870.769686][ C1] ? __raise_softirq_irqoff+0xb0/0xb0 [ 870.769703][ C1] ? memcpy+0x3c/0x60 [ 870.769719][ C1] ? hrtimer_run_queues+0x162/0x450 [ 870.769737][ C1] update_process_times+0x197/0x200 [ 870.769753][ C1] tick_sched_timer+0x27d/0x420 [ 870.769818][ C1] __hrtimer_run_queues+0x4cb/0xa60 [ 870.769837][ C1] ? tick_setup_sched_timer+0x2c0/0x2c0 [ 870.769854][ C1] ? hrtimer_interrupt+0x1040/0x1040 [ 870.769868][ C1] ? ktime_get_update_offsets_now+0x449/0x460 [ 870.769887][ C1] hrtimer_interrupt+0x3b3/0x1040 [ 870.769913][ C1] __sysvec_apic_timer_interrupt+0xf9/0x270 [ 870.769929][ C1] sysvec_apic_timer_interrupt+0x8c/0xb0 [ 870.769947][ C1] [ 870.769952][ C1] asm_sysvec_apic_timer_interrupt+0x12/0x20 [ 870.769967][ C1] RIP: 0010:smp_call_function_many_cond+0xaa5/0xd60 [ 870.770011][ C1] Code: df 75 12 e8 ad 9d 0b 00 eb 50 66 66 2e 0f 1f 84 00 00 00 00 00 f3 90 42 0f b6 04 3b 84 c0 75 11 41 f7 45 00 01 00 00 00 74 2b 86 9d 0b 00 eb e4 44 89 e9 80 e1 07 80 c1 03 38 c1 7c e2 4c 89 [ 870.770024][ C1] RSP: 0018:ffffc9000235fb00 EFLAGS: 00000202 [ 870.770039][ C1] RAX: 0000000000000000 RBX: 1ffff11017387055 RCX: 0000000000040000 [ 870.770049][ C1] RDX: ffffc90014c75000 RSI: 00000000000072a7 RDI: 00000000000072a8 [ 870.770059][ C1] RBP: ffffc9000235fc30 R08: ffffffff81753ebe R09: ffffffff842c1850 [ 870.770068][ C1] R10: 0000000000000009 R11: ffff88808de20000 R12: 0000000000000000 [ 870.770079][ C1] R13: ffff8880b9c382a8 R14: 1ffff110173a64a0 R15: dffffc0000000000 [ 870.770092][ C1] ? cpumask_next+0x20/0x100 [ 870.770107][ C1] ? smp_call_function_many_cond+0xa6e/0xd60 [ 870.770129][ C1] ? clock_was_set+0x910/0x910 [ 870.770145][ C1] ? smp_call_function_many+0x30/0x30 [ 870.770160][ C1] ? _raw_spin_unlock_irqrestore+0xc1/0x120 [ 870.770177][ C1] ? _raw_spin_unlock+0x40/0x40 [ 870.770193][ C1] ? ktime_get_update_offsets_now+0x449/0x460 [ 870.770213][ C1] clock_was_set+0x83e/0x910 [ 870.770231][ C1] ? destroy_hrtimer_on_stack+0x20/0x20 [ 870.770248][ C1] ? timekeeping_update+0x3d6/0x440 [ 870.770265][ C1] do_settimeofday64+0x80e/0x950 [ 870.770284][ C1] ? ipv6_push_nfrag_opts+0x33/0x990 [ 870.770328][ C1] ? __x64_sys_clock_settime+0x1f4/0x230 [ 870.770344][ C1] ? get_device_system_crosststamp+0x9d0/0x9d0 [ 870.770360][ C1] ? ipv6_push_nfrag_opts+0x33/0x990 [ 870.770372][ C1] ? bpf_lsm_settime+0x5/0x10 [ 870.770416][ C1] ? security_settime64+0x9a/0xb0 [ 870.770463][ C1] __x64_sys_clock_settime+0x1f4/0x230 [ 870.770483][ C1] ? exit_itimers+0x3b0/0x3b0 [ 870.770495][ C1] ? syscall_enter_from_user_mode+0x2e/0x1b0 [ 870.770510][ C1] ? syscall_enter_from_user_mode+0x2e/0x1b0 [ 870.770524][ C1] do_syscall_64+0x3d/0xb0 [ 870.770538][ C1] entry_SYSCALL_64_after_hwframe+0x44/0xae [ 870.770553][ C1] RIP: 0033:0x4665f9 [ 870.770566][ C1] Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48 [ 870.770577][ C1] RSP: 002b:00007fa6a20df188 EFLAGS: 00000246 ORIG_RAX: 00000000000000e3 [ 870.770592][ C1] RAX: ffffffffffffffda RBX: 000000000056bf80 RCX: 00000000004665f9 [ 870.770602][ C1] RDX: 0000000000000000 RSI: 0000000020000100 RDI: 0000000000000000 [ 870.770610][ C1] RBP: 00000000004bfcc4 R08: 0000000000000000 R09: 0000000000000000 [ 870.770617][ C1] R10: 0000000000000000 R11: 0000000000000246 R12: 000000000056bf80 [ 870.770624][ C1] R13: 00007ffe2d7308af R14: 00007fa6a20df300 R15: 0000000000022000 [ 870.993081][ T3242] ieee802154 phy0 wpan0: encryption failed: -22 [ 871.501522][T10393] } 18039 jiffies s: 31145 root: 0x0/. [ 871.578697][ T3242] ieee802154 phy1 wpan1: encryption failed: -22 12:55:25 executing program 3: syz_mount_image$erofs(&(0x7f0000000000), &(0x7f0000000140)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010000)="e2e1f5e09521e93c026000000c0024", 0xf, 0x400}, {&(0x7f0000000080)="030045318e21", 0x6, 0x480}], 0x0, &(0x7f0000000300)=ANY=[]) 12:55:25 executing program 2: r0 = 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, 0xfffffff7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_bp, 0x0, 0x0, 0x1, 0x7, 0x0, 0xfffffffc}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x3) shmat(0x0, &(0x7f0000000000/0x13000)=nil, 0x4000) shmctl$IPC_STAT(0x0, 0x2, 0x0) r1 = shmget$private(0x0, 0x1000, 0x54001800, &(0x7f0000fff000/0x1000)=nil) shmat(r1, &(0x7f0000000000/0x4000)=nil, 0xffffffffffffdfff) shmat(r1, &(0x7f0000000000/0x13000)=nil, 0x4000) r2 = shmget(0x2, 0x1000, 0xa18, &(0x7f0000ffd000/0x1000)=nil) shmctl$IPC_RMID(r2, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) shmctl$IPC_RMID(0x0, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) write$P9_RLERROR(0xffffffffffffffff, &(0x7f0000000700)=ANY=[@ANYBLOB="bc7b9d7b18d38923cdcf5c7256a1e7549ec2365959effbd933decf4135e9050b26162bfaeb7ab057d8ab95ccd5d03f7c835ec3135ec7c5661c8bc4d50bb0671568050decb983065ddae3e293a70b02647205bc1dd3565bf4b8836c2e031e27097cfb56b0f7a2990db7d97b42c297020101e316814ed0beb884c8f517d65bbbb66dc83d7a8f12bfc2387e0521fb8207862519ef0d521c5ec7fc2e2e904c842c215338f0a549f40f24f1648acda00ee8a0b3130ae29ca2728f0e039430ac80f9f285f8a888eb1d6b262e86023dbb430000000000000005ab03e4f8c746c15095f528460fd163c5afdfc176beb38908000000eae7f772f68b2f0798faa71e5388e19f345f2921bcfdeb7f9fe7c753a84be46e842fc15bd785957d47b7e8e5f20c5c879e754c35ce9d51caac508c3ad4e3faf3aeecc1c7ec9dd155cd6263f1cb3846f73babdbb709fb8eb0d6a502cf55e1110895ebe4f9a1c3eb0000ae1325ccc2f67e8b3b2e42964eb575158c983a734f15f152f232b59a0af3c85372d7a1e869788772e764eb62c88aac66bff68a6a665749710386442d606f54464fcf9ed000c153182034ffe9d1452b975340a3ea5a05a378a24459632ee88db7ac3043867067c090f46d6f4bd10fcd882c587b694cab835c638e3a5243323203131248fa578dceb4051afa45f84ee7d8eba7aff0b7d0baa1c5e1d33d75e5e1a8ba746c9d6b9d3773a2c67773755a21bdc98410eb0a48d47d06abea67a7d8d44f98064360eac40cb3d4f86af94dc4bc023967b7e61ff067e19da31899c6733943ef751a7957303e00c351505380af41e43f655326023943434ec827fd72229b4ac767bb94be65be3c2da8012621dfac73a6583641858b7f45bcd0a2aab2f258d9a84987bfa9b64aa31110d3cc62ecee7e647f69d62df7149ce39c34f6ec0cec272fe0556c00000000000c330b3693bc105c10ef0d7139c7c132b422c983f125710f6e14a3e07b36ff62077c1f513ab8779a389eae353b941af32f10d71993fe336b1f739d382279efc15539d556897c9aa92a26a29da6b82fb283e2248fca05d5a79e0411a307", @ANYRESOCT, @ANYRES16], 0xf) shmat(r1, &(0x7f00008a7000/0x1000)=nil, 0x0) shmctl$SHM_UNLOCK(0x0, 0xc) r3 = socket$xdp(0x2c, 0x3, 0x0) setsockopt$XDP_UMEM_REG(r3, 0x11b, 0x4, &(0x7f00000000c0)={&(0x7f0000000000)=""/5, 0x222000, 0x1000}, 0x18) setsockopt$XDP_UMEM_REG(0xffffffffffffffff, 0x11b, 0x4, &(0x7f0000000100)={&(0x7f0000000040)=""/34, 0x20000, 0x0, 0x9}, 0x20) shmat(0x0, &(0x7f0000ffc000/0x4000)=nil, 0x1000) ioctl$KDDISABIO(r0, 0x4b37) mbind(&(0x7f000009d000/0x4000)=nil, 0x4000, 0x0, 0x0, 0x0, 0x10000000002) 12:55:25 executing program 1: r0 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r0, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r0, 0x0) syz_emit_ethernet(0x4a, &(0x7f0000000140)={@local, @remote, @void, {@ipv6={0x86dd, @tcp={0x0, 0x6, '\a\t\x00', 0x14, 0x6, 0x0, @remote, @mcast2, {[], {{0x0, 0x4e22, 0x41424344, 0x41424344, 0x0, 0x0, 0x5, 0x2}}}}}}}, 0x0) 12:55:25 executing program 0: r0 = 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, 0xfffffff7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_bp, 0x0, 0x0, 0x1, 0x7, 0x0, 0xfffffffc}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x3) shmat(0x0, &(0x7f0000000000/0x13000)=nil, 0x4000) shmctl$IPC_STAT(0x0, 0x2, 0x0) r1 = shmget$private(0x0, 0x1000, 0x54001800, &(0x7f0000fff000/0x1000)=nil) shmat(r1, &(0x7f0000000000/0x4000)=nil, 0xffffffffffffdfff) shmat(r1, &(0x7f0000000000/0x13000)=nil, 0x4000) r2 = shmget(0x2, 0x1000, 0xa18, &(0x7f0000ffd000/0x1000)=nil) shmctl$IPC_RMID(r2, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) shmctl$IPC_RMID(0x0, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) write$P9_RLERROR(0xffffffffffffffff, &(0x7f0000000700)=ANY=[@ANYBLOB="bc7b9d7b18d38923cdcf5c7256a1e7549ec2365959effbd933decf4135e9050b26162bfaeb7ab057d8ab95ccd5d03f7c835ec3135ec7c5661c8bc4d50bb0671568050decb983065ddae3e293a70b02647205bc1dd3565bf4b8836c2e031e27097cfb56b0f7a2990db7d97b42c297020101e316814ed0beb884c8f517d65bbbb66dc83d7a8f12bfc2387e0521fb8207862519ef0d521c5ec7fc2e2e904c842c215338f0a549f40f24f1648acda00ee8a0b3130ae29ca2728f0e039430ac80f9f285f8a888eb1d6b262e86023dbb430000000000000005ab03e4f8c746c15095f528460fd163c5afdfc176beb38908000000eae7f772f68b2f0798faa71e5388e19f345f2921bcfdeb7f9fe7c753a84be46e842fc15bd785957d47b7e8e5f20c5c879e754c35ce9d51caac508c3ad4e3faf3aeecc1c7ec9dd155cd6263f1cb3846f73babdbb709fb8eb0d6a502cf55e1110895ebe4f9a1c3eb0000ae1325ccc2f67e8b3b2e42964eb575158c983a734f15f152f232b59a0af3c85372d7a1e869788772e764eb62c88aac66bff68a6a665749710386442d606f54464fcf9ed000c153182034ffe9d1452b975340a3ea5a05a378a24459632ee88db7ac3043867067c090f46d6f4bd10fcd882c587b694cab835c638e3a5243323203131248fa578dceb4051afa45f84ee7d8eba7aff0b7d0baa1c5e1d33d75e5e1a8ba746c9d6b9d3773a2c67773755a21bdc98410eb0a48d47d06abea67a7d8d44f98064360eac40cb3d4f86af94dc4bc023967b7e61ff067e19da31899c6733943ef751a7957303e00c351505380af41e43f655326023943434ec827fd72229b4ac767bb94be65be3c2da8012621dfac73a6583641858b7f45bcd0a2aab2f258d9a84987bfa9b64aa31110d3cc62ecee7e647f69d62df7149ce39c34f6ec0cec272fe0556c00000000000c330b3693bc105c10ef0d7139c7c132b422c983f125710f6e14a3e07b36ff62077c1f513ab8779a389eae353b941af32f10d71993fe336b1f739d382279efc15539d556897c9aa92a26a29da6b82fb283e2248fca05d5a79e0411a307", @ANYRESOCT, @ANYRES16], 0xf) shmat(r1, &(0x7f00008a7000/0x1000)=nil, 0x0) shmctl$SHM_UNLOCK(0x0, 0xc) r3 = socket$xdp(0x2c, 0x3, 0x0) setsockopt$XDP_UMEM_REG(r3, 0x11b, 0x4, &(0x7f00000000c0)={&(0x7f0000000000)=""/5, 0x222000, 0x1000}, 0x18) setsockopt$XDP_UMEM_REG(0xffffffffffffffff, 0x11b, 0x4, &(0x7f0000000100)={&(0x7f0000000040)=""/34, 0x20000, 0x0, 0x9}, 0x20) shmat(0x0, &(0x7f0000ffc000/0x4000)=nil, 0x1000) ioctl$KDDISABIO(r0, 0x4b37) mbind(&(0x7f000009d000/0x4000)=nil, 0x4000, 0x0, 0x0, 0x0, 0x10000000002) 12:55:25 executing program 5: r0 = 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, 0xfffffff7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_bp, 0x0, 0x0, 0x1, 0x7, 0x0, 0xfffffffc}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x3) shmat(0x0, &(0x7f0000000000/0x13000)=nil, 0x4000) shmctl$IPC_STAT(0x0, 0x2, 0x0) r1 = shmget$private(0x0, 0x1000, 0x54001800, &(0x7f0000fff000/0x1000)=nil) shmat(r1, &(0x7f0000000000/0x4000)=nil, 0xffffffffffffdfff) shmat(r1, &(0x7f0000000000/0x13000)=nil, 0x4000) r2 = shmget(0x2, 0x1000, 0xa18, &(0x7f0000ffd000/0x1000)=nil) shmctl$IPC_RMID(r2, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) shmctl$IPC_RMID(0x0, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) write$P9_RLERROR(0xffffffffffffffff, &(0x7f0000000700)=ANY=[@ANYBLOB="bc7b9d7b18d38923cdcf5c7256a1e7549ec2365959effbd933decf4135e9050b26162bfaeb7ab057d8ab95ccd5d03f7c835ec3135ec7c5661c8bc4d50bb0671568050decb983065ddae3e293a70b02647205bc1dd3565bf4b8836c2e031e27097cfb56b0f7a2990db7d97b42c297020101e316814ed0beb884c8f517d65bbbb66dc83d7a8f12bfc2387e0521fb8207862519ef0d521c5ec7fc2e2e904c842c215338f0a549f40f24f1648acda00ee8a0b3130ae29ca2728f0e039430ac80f9f285f8a888eb1d6b262e86023dbb430000000000000005ab03e4f8c746c15095f528460fd163c5afdfc176beb38908000000eae7f772f68b2f0798faa71e5388e19f345f2921bcfdeb7f9fe7c753a84be46e842fc15bd785957d47b7e8e5f20c5c879e754c35ce9d51caac508c3ad4e3faf3aeecc1c7ec9dd155cd6263f1cb3846f73babdbb709fb8eb0d6a502cf55e1110895ebe4f9a1c3eb0000ae1325ccc2f67e8b3b2e42964eb575158c983a734f15f152f232b59a0af3c85372d7a1e869788772e764eb62c88aac66bff68a6a665749710386442d606f54464fcf9ed000c153182034ffe9d1452b975340a3ea5a05a378a24459632ee88db7ac3043867067c090f46d6f4bd10fcd882c587b694cab835c638e3a5243323203131248fa578dceb4051afa45f84ee7d8eba7aff0b7d0baa1c5e1d33d75e5e1a8ba746c9d6b9d3773a2c67773755a21bdc98410eb0a48d47d06abea67a7d8d44f98064360eac40cb3d4f86af94dc4bc023967b7e61ff067e19da31899c6733943ef751a7957303e00c351505380af41e43f655326023943434ec827fd72229b4ac767bb94be65be3c2da8012621dfac73a6583641858b7f45bcd0a2aab2f258d9a84987bfa9b64aa31110d3cc62ecee7e647f69d62df7149ce39c34f6ec0cec272fe0556c00000000000c330b3693bc105c10ef0d7139c7c132b422c983f125710f6e14a3e07b36ff62077c1f513ab8779a389eae353b941af32f10d71993fe336b1f739d382279efc15539d556897c9aa92a26a29da6b82fb283e2248fca05d5a79e0411a307", @ANYRESOCT, @ANYRES16], 0xf) shmat(r1, &(0x7f00008a7000/0x1000)=nil, 0x0) shmctl$SHM_UNLOCK(0x0, 0xc) r3 = socket$xdp(0x2c, 0x3, 0x0) setsockopt$XDP_UMEM_REG(r3, 0x11b, 0x4, &(0x7f00000000c0)={&(0x7f0000000000)=""/5, 0x222000, 0x1000}, 0x18) setsockopt$XDP_UMEM_REG(0xffffffffffffffff, 0x11b, 0x4, &(0x7f0000000100)={&(0x7f0000000040)=""/34, 0x20000, 0x0, 0x9}, 0x20) shmat(0x0, &(0x7f0000ffc000/0x4000)=nil, 0x1000) ioctl$KDDISABIO(r0, 0x4b37) mbind(&(0x7f000009d000/0x4000)=nil, 0x4000, 0x0, 0x0, 0x0, 0x10000000002) 12:55:25 executing program 1: r0 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r0, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r0, 0x0) syz_emit_ethernet(0x4a, &(0x7f0000000140)={@local, @remote, @void, {@ipv6={0x86dd, @tcp={0x0, 0x6, '\a\t\x00', 0x14, 0x6, 0x0, @remote, @mcast2, {[], {{0x0, 0x4e22, 0x41424344, 0x41424344, 0x0, 0x0, 0x5, 0x2}}}}}}}, 0x0) [ 872.799218][ T36] audit: type=1800 audit(1630587325.052:272): pid=5725 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed comm="syz-executor.0" name="SYSV00000000" dev="hugetlbfs" ino=6 res=0 errno=0 12:55:25 executing program 0: r0 = 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, 0xfffffff7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_bp, 0x0, 0x0, 0x1, 0x7, 0x0, 0xfffffffc}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x3) shmat(0x0, &(0x7f0000000000/0x13000)=nil, 0x4000) shmctl$IPC_STAT(0x0, 0x2, 0x0) r1 = shmget$private(0x0, 0x1000, 0x54001800, &(0x7f0000fff000/0x1000)=nil) shmat(r1, &(0x7f0000000000/0x4000)=nil, 0xffffffffffffdfff) shmat(r1, &(0x7f0000000000/0x13000)=nil, 0x4000) r2 = shmget(0x2, 0x1000, 0xa18, &(0x7f0000ffd000/0x1000)=nil) shmctl$IPC_RMID(r2, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) shmctl$IPC_RMID(0x0, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) write$P9_RLERROR(0xffffffffffffffff, &(0x7f0000000700)=ANY=[@ANYBLOB="bc7b9d7b18d38923cdcf5c7256a1e7549ec2365959effbd933decf4135e9050b26162bfaeb7ab057d8ab95ccd5d03f7c835ec3135ec7c5661c8bc4d50bb0671568050decb983065ddae3e293a70b02647205bc1dd3565bf4b8836c2e031e27097cfb56b0f7a2990db7d97b42c297020101e316814ed0beb884c8f517d65bbbb66dc83d7a8f12bfc2387e0521fb8207862519ef0d521c5ec7fc2e2e904c842c215338f0a549f40f24f1648acda00ee8a0b3130ae29ca2728f0e039430ac80f9f285f8a888eb1d6b262e86023dbb430000000000000005ab03e4f8c746c15095f528460fd163c5afdfc176beb38908000000eae7f772f68b2f0798faa71e5388e19f345f2921bcfdeb7f9fe7c753a84be46e842fc15bd785957d47b7e8e5f20c5c879e754c35ce9d51caac508c3ad4e3faf3aeecc1c7ec9dd155cd6263f1cb3846f73babdbb709fb8eb0d6a502cf55e1110895ebe4f9a1c3eb0000ae1325ccc2f67e8b3b2e42964eb575158c983a734f15f152f232b59a0af3c85372d7a1e869788772e764eb62c88aac66bff68a6a665749710386442d606f54464fcf9ed000c153182034ffe9d1452b975340a3ea5a05a378a24459632ee88db7ac3043867067c090f46d6f4bd10fcd882c587b694cab835c638e3a5243323203131248fa578dceb4051afa45f84ee7d8eba7aff0b7d0baa1c5e1d33d75e5e1a8ba746c9d6b9d3773a2c67773755a21bdc98410eb0a48d47d06abea67a7d8d44f98064360eac40cb3d4f86af94dc4bc023967b7e61ff067e19da31899c6733943ef751a7957303e00c351505380af41e43f655326023943434ec827fd72229b4ac767bb94be65be3c2da8012621dfac73a6583641858b7f45bcd0a2aab2f258d9a84987bfa9b64aa31110d3cc62ecee7e647f69d62df7149ce39c34f6ec0cec272fe0556c00000000000c330b3693bc105c10ef0d7139c7c132b422c983f125710f6e14a3e07b36ff62077c1f513ab8779a389eae353b941af32f10d71993fe336b1f739d382279efc15539d556897c9aa92a26a29da6b82fb283e2248fca05d5a79e0411a307", @ANYRESOCT, @ANYRES16], 0xf) shmat(r1, &(0x7f00008a7000/0x1000)=nil, 0x0) shmctl$SHM_UNLOCK(0x0, 0xc) r3 = socket$xdp(0x2c, 0x3, 0x0) setsockopt$XDP_UMEM_REG(r3, 0x11b, 0x4, &(0x7f00000000c0)={&(0x7f0000000000)=""/5, 0x222000, 0x1000}, 0x18) setsockopt$XDP_UMEM_REG(0xffffffffffffffff, 0x11b, 0x4, &(0x7f0000000100)={&(0x7f0000000040)=""/34, 0x20000, 0x0, 0x9}, 0x20) shmat(0x0, &(0x7f0000ffc000/0x4000)=nil, 0x1000) ioctl$KDDISABIO(r0, 0x4b37) mbind(&(0x7f000009d000/0x4000)=nil, 0x4000, 0x0, 0x0, 0x0, 0x10000000002) 12:55:25 executing program 4: r0 = openat$ptp0(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) ioctl$PTP_EXTTS_REQUEST2(r0, 0x40103d0b, &(0x7f0000000100)={0x0, 0x696124581ba82190}) [ 872.972252][ T36] audit: type=1800 audit(1630587325.142:273): pid=5722 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed comm="syz-executor.2" name="SYSV00000000" dev="hugetlbfs" ino=8 res=0 errno=0 [ 873.026732][ T36] audit: type=1800 audit(1630587325.262:274): pid=5736 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed comm="syz-executor.0" name="SYSV00000000" dev="hugetlbfs" ino=7 res=0 errno=0 12:55:25 executing program 2: r0 = 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, 0xfffffff7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_bp, 0x0, 0x0, 0x1, 0x7, 0x0, 0xfffffffc}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x3) shmat(0x0, &(0x7f0000000000/0x13000)=nil, 0x4000) shmctl$IPC_STAT(0x0, 0x2, 0x0) r1 = shmget$private(0x0, 0x1000, 0x54001800, &(0x7f0000fff000/0x1000)=nil) shmat(r1, &(0x7f0000000000/0x4000)=nil, 0xffffffffffffdfff) shmat(r1, &(0x7f0000000000/0x13000)=nil, 0x4000) r2 = shmget(0x2, 0x1000, 0xa18, &(0x7f0000ffd000/0x1000)=nil) shmctl$IPC_RMID(r2, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) shmctl$IPC_RMID(0x0, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) write$P9_RLERROR(0xffffffffffffffff, &(0x7f0000000700)=ANY=[@ANYBLOB="bc7b9d7b18d38923cdcf5c7256a1e7549ec2365959effbd933decf4135e9050b26162bfaeb7ab057d8ab95ccd5d03f7c835ec3135ec7c5661c8bc4d50bb0671568050decb983065ddae3e293a70b02647205bc1dd3565bf4b8836c2e031e27097cfb56b0f7a2990db7d97b42c297020101e316814ed0beb884c8f517d65bbbb66dc83d7a8f12bfc2387e0521fb8207862519ef0d521c5ec7fc2e2e904c842c215338f0a549f40f24f1648acda00ee8a0b3130ae29ca2728f0e039430ac80f9f285f8a888eb1d6b262e86023dbb430000000000000005ab03e4f8c746c15095f528460fd163c5afdfc176beb38908000000eae7f772f68b2f0798faa71e5388e19f345f2921bcfdeb7f9fe7c753a84be46e842fc15bd785957d47b7e8e5f20c5c879e754c35ce9d51caac508c3ad4e3faf3aeecc1c7ec9dd155cd6263f1cb3846f73babdbb709fb8eb0d6a502cf55e1110895ebe4f9a1c3eb0000ae1325ccc2f67e8b3b2e42964eb575158c983a734f15f152f232b59a0af3c85372d7a1e869788772e764eb62c88aac66bff68a6a665749710386442d606f54464fcf9ed000c153182034ffe9d1452b975340a3ea5a05a378a24459632ee88db7ac3043867067c090f46d6f4bd10fcd882c587b694cab835c638e3a5243323203131248fa578dceb4051afa45f84ee7d8eba7aff0b7d0baa1c5e1d33d75e5e1a8ba746c9d6b9d3773a2c67773755a21bdc98410eb0a48d47d06abea67a7d8d44f98064360eac40cb3d4f86af94dc4bc023967b7e61ff067e19da31899c6733943ef751a7957303e00c351505380af41e43f655326023943434ec827fd72229b4ac767bb94be65be3c2da8012621dfac73a6583641858b7f45bcd0a2aab2f258d9a84987bfa9b64aa31110d3cc62ecee7e647f69d62df7149ce39c34f6ec0cec272fe0556c00000000000c330b3693bc105c10ef0d7139c7c132b422c983f125710f6e14a3e07b36ff62077c1f513ab8779a389eae353b941af32f10d71993fe336b1f739d382279efc15539d556897c9aa92a26a29da6b82fb283e2248fca05d5a79e0411a307", @ANYRESOCT, @ANYRES16], 0xf) shmat(r1, &(0x7f00008a7000/0x1000)=nil, 0x0) shmctl$SHM_UNLOCK(0x0, 0xc) r3 = socket$xdp(0x2c, 0x3, 0x0) setsockopt$XDP_UMEM_REG(r3, 0x11b, 0x4, &(0x7f00000000c0)={&(0x7f0000000000)=""/5, 0x222000, 0x1000}, 0x18) setsockopt$XDP_UMEM_REG(0xffffffffffffffff, 0x11b, 0x4, &(0x7f0000000100)={&(0x7f0000000040)=""/34, 0x20000, 0x0, 0x9}, 0x20) shmat(0x0, &(0x7f0000ffc000/0x4000)=nil, 0x1000) ioctl$KDDISABIO(r0, 0x4b37) mbind(&(0x7f000009d000/0x4000)=nil, 0x4000, 0x0, 0x0, 0x0, 0x10000000002) 12:55:25 executing program 1: r0 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r0, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r0, 0x0) syz_emit_ethernet(0x4a, &(0x7f0000000140)={@local, @remote, @void, {@ipv6={0x86dd, @tcp={0x0, 0x6, '\a\t\x00', 0x14, 0x6, 0x0, @remote, @mcast2, {[], {{0x0, 0x4e22, 0x41424344, 0x41424344, 0x0, 0x0, 0x5, 0x2}}}}}}}, 0x0) 12:55:25 executing program 0: r0 = 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, 0xfffffff7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, @perf_bp, 0x0, 0x0, 0x1, 0x7, 0x0, 0xfffffffc}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x3) shmat(0x0, &(0x7f0000000000/0x13000)=nil, 0x4000) shmctl$IPC_STAT(0x0, 0x2, 0x0) r1 = shmget$private(0x0, 0x1000, 0x54001800, &(0x7f0000fff000/0x1000)=nil) shmat(r1, &(0x7f0000000000/0x4000)=nil, 0xffffffffffffdfff) shmat(r1, &(0x7f0000000000/0x13000)=nil, 0x4000) r2 = shmget(0x2, 0x1000, 0xa18, &(0x7f0000ffd000/0x1000)=nil) shmctl$IPC_RMID(r2, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) shmctl$IPC_RMID(0x0, 0x0) shmctl$SHM_UNLOCK(r2, 0xc) write$P9_RLERROR(0xffffffffffffffff, &(0x7f0000000700)=ANY=[@ANYBLOB="bc7b9d7b18d38923cdcf5c7256a1e7549ec2365959effbd933decf4135e9050b26162bfaeb7ab057d8ab95ccd5d03f7c835ec3135ec7c5661c8bc4d50bb0671568050decb983065ddae3e293a70b02647205bc1dd3565bf4b8836c2e031e27097cfb56b0f7a2990db7d97b42c297020101e316814ed0beb884c8f517d65bbbb66dc83d7a8f12bfc2387e0521fb8207862519ef0d521c5ec7fc2e2e904c842c215338f0a549f40f24f1648acda00ee8a0b3130ae29ca2728f0e039430ac80f9f285f8a888eb1d6b262e86023dbb430000000000000005ab03e4f8c746c15095f528460fd163c5afdfc176beb38908000000eae7f772f68b2f0798faa71e5388e19f345f2921bcfdeb7f9fe7c753a84be46e842fc15bd785957d47b7e8e5f20c5c879e754c35ce9d51caac508c3ad4e3faf3aeecc1c7ec9dd155cd6263f1cb3846f73babdbb709fb8eb0d6a502cf55e1110895ebe4f9a1c3eb0000ae1325ccc2f67e8b3b2e42964eb575158c983a734f15f152f232b59a0af3c85372d7a1e869788772e764eb62c88aac66bff68a6a665749710386442d606f54464fcf9ed000c153182034ffe9d1452b975340a3ea5a05a378a24459632ee88db7ac3043867067c090f46d6f4bd10fcd882c587b694cab835c638e3a5243323203131248fa578dceb4051afa45f84ee7d8eba7aff0b7d0baa1c5e1d33d75e5e1a8ba746c9d6b9d3773a2c67773755a21bdc98410eb0a48d47d06abea67a7d8d44f98064360eac40cb3d4f86af94dc4bc023967b7e61ff067e19da31899c6733943ef751a7957303e00c351505380af41e43f655326023943434ec827fd72229b4ac767bb94be65be3c2da8012621dfac73a6583641858b7f45bcd0a2aab2f258d9a84987bfa9b64aa31110d3cc62ecee7e647f69d62df7149ce39c34f6ec0cec272fe0556c00000000000c330b3693bc105c10ef0d7139c7c132b422c983f125710f6e14a3e07b36ff62077c1f513ab8779a389eae353b941af32f10d71993fe336b1f739d382279efc15539d556897c9aa92a26a29da6b82fb283e2248fca05d5a79e0411a307", @ANYRESOCT, @ANYRES16], 0xf) shmat(r1, &(0x7f00008a7000/0x1000)=nil, 0x0) shmctl$SHM_UNLOCK(0x0, 0xc) r3 = socket$xdp(0x2c, 0x3, 0x0) setsockopt$XDP_UMEM_REG(r3, 0x11b, 0x4, &(0x7f00000000c0)={&(0x7f0000000000)=""/5, 0x222000, 0x1000}, 0x18) setsockopt$XDP_UMEM_REG(0xffffffffffffffff, 0x11b, 0x4, &(0x7f0000000100)={&(0x7f0000000040)=""/34, 0x20000, 0x0, 0x9}, 0x20) shmat(0x0, &(0x7f0000ffc000/0x4000)=nil, 0x1000) ioctl$KDDISABIO(r0, 0x4b37) mbind(&(0x7f000009d000/0x4000)=nil, 0x4000, 0x0, 0x0, 0x0, 0x10000000002) [ 873.313752][ T36] audit: type=1800 audit(1630587325.512:275): pid=5744 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed comm="syz-executor.0" name="SYSV00000000" dev="hugetlbfs" ino=8 res=0 errno=0 12:55:25 executing program 1: mkdirat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000000)='./cgroup/syz0\x00', 0x1ff) r0 = openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000000), 0x200002, 0x0) bpf$BPF_PROG_QUERY(0x10, &(0x7f0000000080)={r0, 0x6, 0x0, 0x0, 0x0}, 0x20) [ 873.514935][ T36] audit: type=1800 audit(1630587325.522:276): pid=5743 uid=0 auid=4294967295 ses=4294967295 subj=_ op=collect_data cause=failed comm="syz-executor.2" name="SYSV00000000" dev="hugetlbfs" ino=9 res=0 errno=0 [ 873.994895][ T40] netdevsim netdevsim3 netdevsim3 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 [ 874.150694][ T40] netdevsim netdevsim3 netdevsim2 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 [ 874.303318][ T40] netdevsim netdevsim3 netdevsim1 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 [ 874.382399][ T40] netdevsim netdevsim3 netdevsim0 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 [ 874.550333][ T40] tipc: Left network mode [ 876.822884][ T5795] chnl_net:caif_netlink_parms(): no params data found [ 877.371543][ T5798] chnl_net:caif_netlink_parms(): no params data found [ 877.414657][ T5795] bridge0: port 1(bridge_slave_0) entered blocking state [ 877.436172][ T5795] bridge0: port 1(bridge_slave_0) entered disabled state [ 877.450296][ T5795] device bridge_slave_0 entered promiscuous mode [ 877.533502][ T5795] bridge0: port 2(bridge_slave_1) entered blocking state [ 877.540646][ T5795] bridge0: port 2(bridge_slave_1) entered disabled state [ 877.555540][ T5795] device bridge_slave_1 entered promiscuous mode [ 877.590286][ T5799] chnl_net:caif_netlink_parms(): no params data found [ 877.665782][ T5795] bond0: (slave bond_slave_0): Enslaving as an active interface with an up link [ 877.705066][ T5795] bond0: (slave bond_slave_1): Enslaving as an active interface with an up link [ 877.731284][ T5798] bridge0: port 1(bridge_slave_0) entered blocking state [ 877.738845][ T5798] bridge0: port 1(bridge_slave_0) entered disabled state [ 877.749423][ T5798] device bridge_slave_0 entered promiscuous mode [ 877.776503][ T5798] bridge0: port 2(bridge_slave_1) entered blocking state [ 877.788809][ T5798] bridge0: port 2(bridge_slave_1) entered disabled state [ 877.798619][ T5798] device bridge_slave_1 entered promiscuous mode [ 877.854140][ T5795] team0: Port device team_slave_0 added [ 877.870838][ T5798] bond0: (slave bond_slave_0): Enslaving as an active interface with an up link [ 877.887991][ T5795] team0: Port device team_slave_1 added [ 877.911294][ T5795] batman_adv: batadv0: Adding interface: batadv_slave_0 [ 877.918311][ T5795] batman_adv: batadv0: The MTU of interface batadv_slave_0 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 877.944450][ T5795] batman_adv: batadv0: Not using interface batadv_slave_0 (retrying later): interface not active [ 877.956113][ T5799] bridge0: port 1(bridge_slave_0) entered blocking state [ 877.964261][ T5799] bridge0: port 1(bridge_slave_0) entered disabled state [ 877.979879][ T5799] device bridge_slave_0 entered promiscuous mode [ 877.989575][ T5798] bond0: (slave bond_slave_1): Enslaving as an active interface with an up link [ 878.003958][ T5795] batman_adv: batadv0: Adding interface: batadv_slave_1 [ 878.010911][ T5795] batman_adv: batadv0: The MTU of interface batadv_slave_1 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 878.037310][ T5795] batman_adv: batadv0: Not using interface batadv_slave_1 (retrying later): interface not active [ 878.061789][ T5799] bridge0: port 2(bridge_slave_1) entered blocking state [ 878.069692][ T5799] bridge0: port 2(bridge_slave_1) entered disabled state [ 878.077869][ T5799] device bridge_slave_1 entered promiscuous mode [ 878.173056][ T5799] bond0: (slave bond_slave_0): Enslaving as an active interface with an up link [ 878.193218][ T5795] device hsr_slave_0 entered promiscuous mode [ 878.208772][ T5795] device hsr_slave_1 entered promiscuous mode [ 878.217601][ T5795] debugfs: Directory 'hsr0' with parent 'hsr' already present! [ 878.230580][ T5795] Cannot create hsr debugfs directory [ 878.239399][ T5799] bond0: (slave bond_slave_1): Enslaving as an active interface with an up link [ 878.261180][ T5798] team0: Port device team_slave_0 added [ 878.371212][ T5798] team0: Port device team_slave_1 added [ 878.431821][ T2686] Bluetooth: hci3: command 0x0409 tx timeout [ 878.508486][ T5799] team0: Port device team_slave_0 added [ 878.526670][ T5798] batman_adv: batadv0: Adding interface: batadv_slave_0 [ 878.543907][ T5798] batman_adv: batadv0: The MTU of interface batadv_slave_0 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 878.577216][ T5798] batman_adv: batadv0: Not using interface batadv_slave_0 (retrying later): interface not active [ 878.594302][ T5799] team0: Port device team_slave_1 added [ 878.682178][ T5798] batman_adv: batadv0: Adding interface: batadv_slave_1 [ 878.689259][ T5798] batman_adv: batadv0: The MTU of interface batadv_slave_1 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 878.719370][ T5798] batman_adv: batadv0: Not using interface batadv_slave_1 (retrying later): interface not active [ 878.866597][ T5799] batman_adv: batadv0: Adding interface: batadv_slave_0 [ 878.878383][ T5799] batman_adv: batadv0: The MTU of interface batadv_slave_0 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 878.909408][T10139] Bluetooth: hci5: command 0x0409 tx timeout [ 878.916348][ T5799] batman_adv: batadv0: Not using interface batadv_slave_0 (retrying later): interface not active [ 878.931804][T10139] Bluetooth: hci4: command 0x0409 tx timeout [ 878.967275][ T5799] batman_adv: batadv0: Adding interface: batadv_slave_1 [ 878.976308][ T5799] batman_adv: batadv0: The MTU of interface batadv_slave_1 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 879.010740][ T5799] batman_adv: batadv0: Not using interface batadv_slave_1 (retrying later): interface not active [ 879.078919][ T5798] device hsr_slave_0 entered promiscuous mode [ 879.087431][ T5798] device hsr_slave_1 entered promiscuous mode [ 879.099139][ T5798] debugfs: Directory 'hsr0' with parent 'hsr' already present! [ 879.108234][ T5798] Cannot create hsr debugfs directory [ 879.126266][ T5799] device hsr_slave_0 entered promiscuous mode [ 879.134962][ T5799] device hsr_slave_1 entered promiscuous mode [ 879.141534][ T5799] debugfs: Directory 'hsr0' with parent 'hsr' already present! [ 879.149299][ T5799] Cannot create hsr debugfs directory [ 879.171377][ T40] device hsr_slave_0 left promiscuous mode [ 879.177941][ T40] device hsr_slave_1 left promiscuous mode [ 879.184601][ T40] batman_adv: batadv0: Interface deactivated: batadv_slave_0 [ 879.192327][ T40] batman_adv: batadv0: Removing interface: batadv_slave_0 [ 879.200940][ T40] batman_adv: batadv0: Interface deactivated: batadv_slave_1 [ 879.208678][ T40] batman_adv: batadv0: Removing interface: batadv_slave_1 [ 879.218028][ T40] device bridge_slave_1 left promiscuous mode [ 879.224419][ T40] bridge0: port 2(bridge_slave_1) entered disabled state [ 879.233020][ T40] device bridge_slave_0 left promiscuous mode [ 879.239326][ T40] bridge0: port 1(bridge_slave_0) entered disabled state [ 879.250636][ T40] device hsr_slave_0 left promiscuous mode [ 879.257149][ T40] device hsr_slave_1 left promiscuous mode [ 879.263638][ T40] batman_adv: batadv0: Interface deactivated: batadv_slave_0 [ 879.271158][ T40] batman_adv: batadv0: Removing interface: batadv_slave_0 [ 879.279411][ T40] batman_adv: batadv0: Interface deactivated: batadv_slave_1 [ 879.287111][ T40] batman_adv: batadv0: Removing interface: batadv_slave_1 [ 879.295779][ T40] device bridge_slave_1 left promiscuous mode [ 879.302015][ T40] bridge0: port 2(bridge_slave_1) entered disabled state [ 879.309994][ T40] device bridge_slave_0 left promiscuous mode [ 879.316484][ T40] bridge0: port 1(bridge_slave_0) entered disabled state [ 879.327172][ T40] device hsr_slave_0 left promiscuous mode [ 879.333606][ T40] device hsr_slave_1 left promiscuous mode [ 879.339876][ T40] batman_adv: batadv0: Interface deactivated: batadv_slave_0 [ 879.347710][ T40] batman_adv: batadv0: Removing interface: batadv_slave_0 [ 879.355942][ T40] batman_adv: batadv0: Interface deactivated: batadv_slave_1 [ 879.363435][ T40] batman_adv: batadv0: Removing interface: batadv_slave_1 [ 879.372651][ T40] device bridge_slave_1 left promiscuous mode [ 879.378812][ T40] bridge0: port 2(bridge_slave_1) entered disabled state [ 879.387347][ T40] device bridge_slave_0 left promiscuous mode [ 879.393597][ T40] bridge0: port 1(bridge_slave_0) entered disabled state [ 879.407627][ T40] device veth1_macvtap left promiscuous mode [ 879.414026][ T40] device veth0_macvtap left promiscuous mode [ 879.420197][ T40] device veth1_vlan left promiscuous mode [ 879.426095][ T40] device veth0_vlan left promiscuous mode [ 879.432914][ T40] device veth1_macvtap left promiscuous mode [ 879.439365][ T40] device veth0_macvtap left promiscuous mode [ 879.445551][ T40] device veth1_vlan left promiscuous mode [ 879.451421][ T40] device veth0_vlan left promiscuous mode [ 879.458706][ T40] device veth1_macvtap left promiscuous mode [ 879.465020][ T40] device veth0_macvtap left promiscuous mode [ 879.471110][ T40] device veth1_vlan left promiscuous mode [ 879.477157][ T40] device veth0_vlan left promiscuous mode [ 880.501633][ T2686] Bluetooth: hci3: command 0x041b tx timeout