ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x100020, 0x1fffe0}, {&(0x7f0000168a00)="eb52904e5446532020202000102000000000000000f8000000000000000000000000000080008000ff0300000000000002000000000000000f00000000000000f4000000f400000025f72e792ed6fb51000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f74206120626f6f7461626c65206469736b2e20506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0, 0x3ff000}, {&(0x7f0000168b00)="00000000000000000000000000000000000000000000000000000000000055aa", 0x20, 0x3ff1e0}], 0x0, &(0x7f0000168c00)) r1 = socket(0x1, 0x5, 0x0) shutdown(r1, 0x1) sendto$inet6(r1, 0x0, 0x0, 0x401, 0x0, 0x0) sendmsg$NFT_BATCH(r1, &(0x7f0000000180)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x80000000}, 0xc, &(0x7f0000000140)={&(0x7f0000002940)={{0x14}, [@NFT_MSG_DELCHAIN={0x34, 0x5, 0xa, 0x201, 0x0, 0x0, {0xa, 0x0, 0x1}, [@NFTA_CHAIN_TYPE={0xb, 0x7, 'filter\x00'}, @NFTA_CHAIN_TYPE={0xb, 0x7, 'filter\x00'}, @NFTA_CHAIN_POLICY={0x8, 0x5, 0x1, 0x0, 0xfffffffffffffffe}]}, @NFT_MSG_NEWFLOWTABLE={0x4c, 0x16, 0xa, 0x101, 0x0, 0x0, {0x0, 0x0, 0x7}, [@NFTA_FLOWTABLE_HOOK={0x2c, 0x3, 0x0, 0x1, [@NFTA_FLOWTABLE_HOOK_PRIORITY={0x8, 0x2, 0x1, 0x0, 0x1}, @NFTA_FLOWTABLE_HOOK_NUM={0x8}, @NFTA_FLOWTABLE_HOOK_NUM={0x8}, @NFTA_FLOWTABLE_HOOK_NUM={0x8}, @NFTA_FLOWTABLE_HOOK_NUM={0x8}]}, @NFTA_FLOWTABLE_NAME={0x9, 0x2, 'syz0\x00'}]}, @NFT_MSG_DELRULE={0x10ac, 0x8, 0xa, 0x801, 0x0, 0x0, {0x7}, [@NFTA_RULE_USERDATA={0xdc, 0x7, 0x1, 0x0, "268a6700c6cdb43d1d3c435b24f8c9cbc7a973e22e476723333fa81041c8e1385760421026818999f51a950c6181da4c13d9054d47dd2c5060e27b602554362921c42b2e28e56d410acaddbfe420f5281e935f6dfa0a54af64f7b76c72ded288f092b90cd537dd32718a1c3c928dc1238c4a27b233b6aea689e7ea292b917e3b6960456699dff8ec35158750072bc3aefc49561a0cd4dc727400c41367482c8346396f6f63c540865b622b1b960a77dbdd7b9667e1e24e4165eecced57f3deef320a407cdad33aea4865a461c82a44b6eb352e5a39f06146"}, @NFTA_RULE_EXPRESSIONS={0xf78, 0x4, 0x0, 0x1, [{0xd8, 0x1, 0x0, 0x1, [@fib={{0x8}, @void}, @fwd={{0x8}, @val={0x4}}, @dynset={{0xb}, @val={0xac, 0x2, 0x0, 0x1, [@NFTA_DYNSET_SET_NAME={0x9, 0x1, 'syz1\x00'}, @NFTA_DYNSET_SET_NAME={0x9, 0x1, 'syz1\x00'}, @NFTA_DYNSET_TIMEOUT={0xc, 0x6, 0x1, 0x0, 0x1}, @NFTA_DYNSET_SET_ID={0x8}, @NFTA_DYNSET_SREG_DATA={0x8, 0x5, 0x1, 0x0, 0x17}, @NFTA_DYNSET_SET_ID={0x8, 0x2, 0x1, 0x0, 0x1}, @NFTA_DYNSET_EXPR={0x6c, 0x7, 0x0, 0x1, {{0xb}, @val={0x5c, 0x2, 0x0, 0x1, [@NFTA_LOOKUP_SET_ID={0x8}, @NFTA_LOOKUP_SET={0x9, 0x1, 'syz1\x00'}, @NFTA_LOOKUP_DREG={0x8, 0x3, 0x1, 0x0, 0x13}, @NFTA_LOOKUP_SET_ID={0x8}, @NFTA_LOOKUP_DREG={0x8, 0x3, 0x1, 0x0, 0x8}, @NFTA_LOOKUP_SET_ID={0x8, 0x4, 0x1, 0x0, 0x1}, @NFTA_LOOKUP_SREG={0x8}, @NFTA_LOOKUP_SET={0x9, 0x1, 'syz1\x00'}, @NFTA_LOOKUP_DREG={0x8, 0x3, 0x1, 0x0, 0x15}, @NFTA_LOOKUP_FLAGS={0x8, 0x5, 0x1, 0x0, 0x1}]}}}]}}, @rt={{0x7}, @void}]}, {0x114, 0x1, 0x0, 0x1, [@quota={{0xa}, @val={0x40, 0x2, 0x0, 0x1, [@NFTA_QUOTA_FLAGS={0x8, 0x2, 0x1, 0x0, 0x1}, @NFTA_QUOTA_BYTES={0xc, 0x1, 0x1, 0x0, 0xffff}, @NFTA_QUOTA_FLAGS={0x8}, @NFTA_QUOTA_BYTES={0xc, 0x1, 0x1, 0x0, 0x91f2}, @NFTA_QUOTA_FLAGS={0x8}, @NFTA_QUOTA_CONSUMED={0xc, 0x4, 0x1, 0x0, 0x6}]}}, @redir={{0xa}, @val={0x44, 0x2, 0x0, 0x1, [@NFTA_REDIR_REG_PROTO_MIN={0x8, 0x1, 0x1, 0x0, 0xe}, @NFTA_REDIR_REG_PROTO_MAX={0x8, 0x2, 0x1, 0x0, 0x2}, @NFTA_REDIR_REG_PROTO_MIN={0x8}, @NFTA_REDIR_REG_PROTO_MIN={0x8, 0x1, 0x1, 0x0, 0x17}, @NFTA_REDIR_FLAGS={0x8, 0x3, 0x1, 0x0, 0x1}, @NFTA_REDIR_REG_PROTO_MIN={0x8, 0x1, 0x1, 0x0, 0x14}, @NFTA_REDIR_FLAGS={0x8, 0x3, 0x1, 0x0, 0x2}, @NFTA_REDIR_REG_PROTO_MAX={0x8, 0x2, 0x1, 0x0, 0x4}]}}, @quota={{0xa}, @val={0x3c, 0x2, 0x0, 0x1, [@NFTA_QUOTA_CONSUMED={0xc, 0x4, 0x1, 0x0, 0x3}, @NFTA_QUOTA_CONSUMED={0xc, 0x4, 0x1, 0x0, 0x800}, @NFTA_QUOTA_CONSUMED={0xc, 0x4, 0x1, 0x0, 0x100}, @NFTA_QUOTA_CONSUMED={0xc, 0x4, 0x1, 0x0, 0x5}, @NFTA_QUOTA_FLAGS={0x8, 0x2, 0x1, 0x0, 0x2}]}}, @redir={{0xa}, @val={0x14, 0x2, 0x0, 0x1, [@NFTA_REDIR_REG_PROTO_MAX={0x8, 0x2, 0x1, 0x0, 0xa}, @NFTA_REDIR_REG_PROTO_MAX={0x8, 0x2, 0x1, 0x0, 0xd}]}}, @tunnel={{0xb}, @void}]}, {0x1c, 0x1, 0x0, 0x1, [@lookup={{0xb}, @void}, @queue={{0xa}, @void}]}, {0x208, 0x1, 0x0, 0x1, [@reject={{0xb}, @val={0x34, 0x2, 0x0, 0x1, [@NFTA_REJECT_TYPE={0x8, 0x1, 0x1, 0x0, 0x2}, @NFTA_REJECT_TYPE={0x8, 0x1, 0x1, 0x0, 0x2}, @NFTA_REJECT_TYPE={0x8}, @NFTA_REJECT_TYPE={0x8}, @NFTA_REJECT_TYPE={0x8}, @NFTA_REJECT_ICMP_CODE={0x5, 0x2, 0x39}]}}, @socket={{0xb}, @val={0x34, 0x2, 0x0, 0x1, [@NFTA_SOCKET_KEY={0x8}, @NFTA_SOCKET_KEY={0x8, 0x1, 0x1, 0x0, 0x1}, @NFTA_SOCKET_DREG={0x8, 0x2, 0x1, 0x0, 0xe}, @NFTA_SOCKET_KEY={0x8}, @NFTA_SOCKET_DREG={0x8, 0x2, 0x1, 0x0, 0x63d55a297397146e}, @NFTA_SOCKET_KEY={0x8}]}}, @hash={{0x9}, @val={0x44, 0x2, 0x0, 0x1, [@NFTA_HASH_DREG={0x8, 0x2, 0x1, 0x0, 0x13}, @NFTA_HASH_SEED={0x8, 0x5, 0x1, 0x0, 0x7f}, @NFTA_HASH_TYPE={0x8, 0x7, 0x1, 0x0, 0x1}, @NFTA_HASH_TYPE={0x8}, @NFTA_HASH_SEED={0x8, 0x5, 0x1, 0x0, 0x6}, @NFTA_HASH_DREG={0x8, 0x2, 0x1, 0x0, 0x8}, @NFTA_HASH_DREG={0x8, 0x2, 0x1, 0x0, 0x17}, @NFTA_HASH_DREG={0x8, 0x2, 0x1, 0x0, 0x8}]}}, @reject={{0xb}, @val={0x54, 0x2, 0x0, 0x1, [@NFTA_REJECT_ICMP_CODE={0x5, 0x2, 0x3}, @NFTA_REJECT_TYPE={0x8, 0x1, 0x1, 0x0, 0x1}, @NFTA_REJECT_TYPE={0x8, 0x1, 0x1, 0x0, 0x1}, @NFTA_REJECT_TYPE={0x8}, @NFTA_REJECT_ICMP_CODE={0x5}, @NFTA_REJECT_TYPE={0x8, 0x1, 0x1, 0x0, 0x2}, @NFTA_REJECT_ICMP_CODE={0x5, 0x2, 0x2}, @NFTA_REJECT_ICMP_CODE={0x5, 0x2, 0x20}, @NFTA_REJECT_ICMP_CODE={0x5, 0x2, 0x1f}, @NFTA_REJECT_ICMP_CODE={0x5, 0x2, 0x6}]}}, @rt={{0x7}, @val={0x54, 0x2, 0x0, 0x1, [@NFTA_RT_DREG={0x8, 0x1, 0x1, 0x0, 0x14}, @NFTA_RT_KEY={0x8, 0x2, 0x1, 0x0, 0x4}, @NFTA_RT_KEY={0x8, 0x2, 0x1, 0x0, 0x2}, @NFTA_RT_KEY={0x8, 0x2, 0x1, 0x0, 0x3}, @NFTA_RT_KEY={0x8}, @NFTA_RT_KEY={0x8, 0x2, 0x1, 0x0, 0x3}, @NFTA_RT_DREG={0x8, 0x1, 0x1, 0x0, 0x2}, @NFTA_RT_KEY={0x8}, @NFTA_RT_KEY={0x8, 0x2, 0x1, 0x0, 0x2}, @NFTA_RT_KEY={0x8, 0x2, 0x1, 0x0, 0x2}]}}, @meta={{0x9}, @val={0x34, 0x2, 0x0, 0x1, [@NFTA_META_SREG={0x8, 0x3, 0x1, 0x0, 0xb}, @NFTA_META_SREG={0x8, 0x3, 0x1, 0x0, 0x10}, @NFTA_META_DREG={0x8, 0x1, 0x1, 0x0, 0x8}, @NFTA_META_DREG={0x8, 0x1, 0x1, 0x0, 0x14}, @NFTA_META_SREG={0x8, 0x3, 0x1, 0x0, 0x4}, @NFTA_META_DREG={0x8, 0x1, 0x1, 0x0, 0x3}]}}, @dynset={{0xb}, @void}, @dup_ipv6={{0x8}, @void}, @dup_ipv6={{0x8}, @val={0x14, 0x2, 0x0, 0x1, [@NFTA_DUP_SREG_DEV={0x8, 0x2, 0x1, 0x0, 0x3}, @NFTA_DUP_SREG_ADDR={0x8, 0x1, 0x1, 0x0, 0xa}]}}, @log={{0x8}, @void}]}, {0x60, 0x1, 0x0, 0x1, [@exthdr={{0xb}, @void}, @synproxy={{0xd}, @void}, @synproxy={{0xd}, @void}, @synproxy={{0xd}, @val={0x14, 0x2, 0x0, 0x1, [@NFTA_SYNPROXY_WSCALE={0x5, 0x2, 0x6}, @NFTA_SYNPROXY_MSS={0x6}]}}, @tproxy={{0xb}, @void}]}, {0x9ac, 0x1, 0x0, 0x1, [@flow_offload={{0x11}, @void}, @synproxy={{0xd}, @val={0x34, 0x2, 0x0, 0x1, [@NFTA_SYNPROXY_WSCALE={0x5}, @NFTA_SYNPROXY_WSCALE={0x5, 0x2, 0xf8}, @NFTA_SYNPROXY_FLAGS={0x8, 0x3, 0x1, 0x0, 0x8}, @NFTA_SYNPROXY_FLAGS={0x8, 0x3, 0x1, 0x0, 0x1}, @NFTA_SYNPROXY_WSCALE={0x5, 0x2, 0x4}, @NFTA_SYNPROXY_FLAGS={0x8, 0x3, 0x1, 0x0, 0x7}]}}, @lookup={{0xb}, @void}, @immediate={{0xe}, @val={0x934, 0x2, 0x0, 0x1, [@NFTA_IMMEDIATE_DATA={0x38c, 0x2, 0x0, 0x1, [@NFTA_DATA_VALUE={0x94, 0x1, "21eba16c6714369114178853d0581cdfbcfb1d96039dc553851501b904be41b9b8af23fa5507ec300bffa5f27fbd2ca5379219d147cd85b6de86b6aee455de96467a2cde421ae1e9b6b96caef03a2fc7f1a71227f2f35b18c185585f338a2e41b9a8165445c5bf6de38c6faf542ff9eb11468da2b00dfc7c2a2884365c40c19e625ae7cf6300ba0cf6c0be43fe8b735b"}, @NFTA_DATA_VALUE={0xf8, 0x1, "015a1a1e80ef2ca6a640f9338e8e324098f3adbb49ded5145375440bf96125463b89f41871dfd651f542c1f9982e3dbcbea0e33d8928b8890326e8df8292eaf1cc927ba924df2fac1f9ccaaa2b17d6c00d92d2f7932e96c8e9c3e6c40c97d7473019f06242e787fe40c25912568baaf1a403c4e7a7fc3655f33fa8587ad7b7f4985353363de4099051071be853fb00cd0d664201ff82b8eee1eb08c4ae96985389bcb2c7fde02333b72b4fbfa8472d1c5ce9874b679893901ccea178980fc428d3db776f740f68b512bbda3423563a8ff62d242fd6783c78dba4942a58d4f2abdb938702e2eb8564d4b316b2e8cb4be3fcaf840f"}, @NFTA_DATA_VERDICT={0x5c, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xffffffffffffffff}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz0\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}]}, @NFTA_DATA_VALUE={0x34, 0x1, "a84f0bd53159e0b16af23abcd075ab7d9689e7e2a1e57f4c6f1e5e5cbb144dd24b9fe944c3f7fd8d0819b289ac797f0b"}, @NFTA_DATA_VALUE={0x41, 0x1, "c084fd67aa308217cdf7f4a5e7e91c2a8edc228a227b390e1895d13530260c25049f2e87ce0141d4894637f75a68b0fa62fe87d8a22a8f4a5b26627ae2"}, @NFTA_DATA_VERDICT={0x48, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffc}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz0\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz0\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}]}, @NFTA_DATA_VALUE={0x27, 0x1, "fab9e8f300c344678594cfb7f8cb26f4ffe37c4326e9db367e319453b824aedbdedbe6"}, @NFTA_DATA_VALUE={0xb6, 0x1, "090b452f833099d19adb363bbde48790a5711c0402495a8986b77d83201cc4ef1e9dea49d70c53606ffc7aae7281a1cfb05818bf6ada94bf1df45a54d5ff5ebf188ef4817682e855acd378900b8e99a250cd4d218c337565898d4aa525a071f2a89b913861fe084f2d65be6a33ef9ea4ce024c4017deba18ffc28470bf0a5113fa4272a392a85d0880e8be58c9f27c841fe483bbaa77cad736b573b94fc5af08c6176651942bc555d9b3a17f47e0a6829a52"}]}, @NFTA_IMMEDIATE_DATA={0x164, 0x2, 0x0, 0x1, [@NFTA_DATA_VALUE={0xc4, 0x1, "3aeaf5695dae2c31e49ad551d0bbd924d9f8cc22c8c481b4f4c3352a57d240b5d5f2cf57c995341a9cf4bc4e0d1e30e5cdd4b98cafb70af4cbf30166257e42a8a2c918693958024fbc01649b8eae900d18965fdd58caee77b14cf5ba22279dd35175a45f46eab413c7722e65fd27f19289d1d7abf9d20da0129b4a8d932b5126aef97c74448271935c856f52a5f63d3f5b6333722e41dd4cc266e50531e277c2bd9dc44428f1546134d07728a0ff752fe5f71d35df4bab986655434483780c80"}, @NFTA_DATA_VERDICT={0x60, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz0\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffe}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffc}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffb}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffc}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}]}, @NFTA_DATA_VERDICT={0x3c, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz0\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffb}]}]}, @NFTA_IMMEDIATE_DREG={0x8, 0x1, 0x1, 0x0, 0x16}, @NFTA_IMMEDIATE_DATA={0x138, 0x2, 0x0, 0x1, [@NFTA_DATA_VERDICT={0x50, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz0\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xffffffffffffffff}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffc}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz0\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz0\x00'}]}, @NFTA_DATA_VERDICT={0x44, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffb}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffc}]}, @NFTA_DATA_VALUE={0x52, 0x1, "4336602df49ebcbd562fa6232091f4d416ba202923b7ebc6c53fbe31ea8d22a40e962e3582bba4d7acc14139bd2eff45505db6708dc6664185d9d11cc97e4c4cf4b3c37b2d88a6ba7eedaac3bcb5"}, @NFTA_DATA_VERDICT={0x4c, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}]}]}, @NFTA_IMMEDIATE_DREG={0x8, 0x1, 0x1, 0x0, 0xb}, @NFTA_IMMEDIATE_DATA={0xe8, 0x2, 0x0, 0x1, [@NFTA_DATA_VERDICT={0x2c, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xffffffffffffffff}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffb}]}, @NFTA_DATA_VALUE={0xb6, 0x1, "9dafb50649efc946b1790befda82669bced68a3508843e0337b494909c2d7ec15f774ea46ba9f30f393589e3b90ab39b155e6de568289578a4441361b7f575966469ca4c6321d3d7ef0475e0043548ebc509a6d67659db4e22e7d940f1d1eead8a201540bc11ea22545797b6a962cb7f0f8c2ec935533553586b0f5899879e1853189fc9de41142951b77e79199232b77f9f93bd502c4b47b6bc49df871c11901da518dd61591ee31eed20f2a1ac2ef69905"}]}, @NFTA_IMMEDIATE_DATA={0xa8, 0x2, 0x0, 0x1, [@NFTA_DATA_VERDICT={0x1c, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}]}, @NFTA_DATA_VERDICT={0x60, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz0\x00'}, @NFTA_VERDICT_CODE={0x8}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0x1}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xffffffffffffffff}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xffffffffffffffff}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CODE={0x8}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}]}, @NFTA_DATA_VERDICT={0x28, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz2\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffb}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffd}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0x5}]}]}, @NFTA_IMMEDIATE_DATA={0x168, 0x2, 0x0, 0x1, [@NFTA_DATA_VALUE={0xc5, 0x1, "5c6678150034771f38ce1f4058029109ba05ff7a7d3b59f4461d67df4e39bda2fdad15ef5b68d0c714efc9787d3c007b5242cdb0b8c872e20129625d47d1fc2512813bb5c6b1afe051bfc0381aa26a0e23a41e6126ff7170de64a0a3e42d0c82235ca52ad56047f04a9ab7991eaf4d89420db1e676c3e817c2281be1023bf134e1d94ccfa6c1ea2de94b8540e24790028e8913f09e3b310c18cfd99c4e37803206fea89078641a71abceb7d8ffe9a9afa19fa8c55d71eea2be83ff4a732e569fab"}, @NFTA_DATA_VALUE={0x35, 0x1, "503f7c4f4ab98f64a1db7349788ed562d37d4bba9a0e82f57d11ed1d8fd9669d97e1004a75a5536586738338110e4d8892"}, @NFTA_DATA_VALUE={0xd, 0x1, "b6fce16ab485f6ea13"}, @NFTA_DATA_VERDICT={0x20, 0x2, 0x0, 0x1, [@NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffe}, @NFTA_VERDICT_CHAIN={0x9, 0x2, 'syz1\x00'}, @NFTA_VERDICT_CODE={0x8, 0x1, 0x0, 0x1, 0xfffffffffffffffe}]}, @NFTA_DATA_VALUE={0xd, 0x1, "307f7b26eb1d517171"}, @NFTA_DATA_VALUE={0x21, 0x1, "c74815b95a736b8d75360535fbd76354ddd04fe7928bf3bf7641387438"}]}]}}]}, {0xc8, 0x1, 0x0, 0x1, [@payload={{0xc}, @void}, @flow_offload={{0x11}, @void}, @osf={{0x8}, @void}, @ct={{0x7}, @void}, @nat={{0x8}, @void}, @rt={{0x7}, @val={0x54, 0x2, 0x0, 0x1, [@NFTA_RT_DREG={0x8, 0x1, 0x1, 0x0, 0x17}, @NFTA_RT_KEY={0x8, 0x2, 0x1, 0x0, 0x2}, @NFTA_RT_DREG={0x8, 0x1, 0x1, 0x0, 0x14}, @NFTA_RT_DREG={0x8, 0x1, 0x1, 0x0, 0xc}, @NFTA_RT_KEY={0x8, 0x2, 0x1, 0x0, 0x2}, @NFTA_RT_DREG={0x8, 0x1, 0x1, 0x0, 0x3}, @NFTA_RT_KEY={0x8}, @NFTA_RT_DREG={0x8, 0x1, 0x1, 0x0, 0xd}, @NFTA_RT_KEY={0x8, 0x2, 0x1, 0x0, 0x4}, @NFTA_RT_DREG={0x8, 0x1, 0x1, 0x0, 0x12}]}}, @dup_ipv6={{0x8}, @val={0x1c, 0x2, 0x0, 0x1, [@NFTA_DUP_SREG_ADDR={0x8, 0x1, 0x1, 0x0, 0xf}, @NFTA_DUP_SREG_ADDR={0x8, 0x1, 0x1, 0x0, 0xa}, @NFTA_DUP_SREG_ADDR={0x8, 0x1, 0x1, 0x0, 0x10}]}}, @xfrm={{0x9}, @void}]}, {0x90, 0x1, 0x0, 0x1, [@cmp={{0x8}, @val={0x14, 0x2, 0x0, 0x1, [@NFTA_CMP_SREG={0x8, 0x1, 0x1, 0x0, 0xe}, @NFTA_CMP_OP={0x8, 0x2, 0x1, 0x0, 0x5}]}}, @log={{0x8}, @void}, @fib={{0x8}, @void}, @fib={{0x8}, @val={0x4c, 0x2, 0x0, 0x1, [@NFTA_FIB_RESULT={0x8}, @NFTA_FIB_RESULT={0x8}, @NFTA_FIB_DREG={0x8}, @NFTA_FIB_RESULT={0x8, 0x2, 0x1, 0x0, 0x2}, @NFTA_FIB_FLAGS={0x8, 0x3, 0x1, 0x0, 0x21}, @NFTA_FIB_DREG={0x8, 0x1, 0x1, 0x0, 0xf}, @NFTA_FIB_DREG={0x8, 0x1, 0x1, 0x0, 0x3}, @NFTA_FIB_RESULT={0x8, 0x2, 0x1, 0x0, 0x3}, @NFTA_FIB_DREG={0x8, 0x1, 0x1, 0x0, 0xb}]}}, @exthdr={{0xb}, @void}]}]}, @NFTA_RULE_TABLE={0x9, 0x1, 'syz0\x00'}, @NFTA_RULE_HANDLE={0xc, 0x3, 0x1, 0x0, 0x1}, @NFTA_RULE_EXPRESSIONS={0x2c, 0x4, 0x0, 0x1, [{0x28, 0x1, 0x0, 0x1, [@numgen={{0xb}, @void}, @xfrm={{0x9}, @val={0xc, 0x2, 0x0, 0x1, [@NFTA_XFRM_SPNUM={0x8, 0x4, 0x1, 0x0, 0x1}]}}]}]}]}, @NFT_MSG_DELFLOWTABLE={0x54, 0x18, 0xa, 0x101, 0x0, 0x0, {0xc, 0x0, 0x6}, [@NFTA_FLOWTABLE_HOOK={0x40, 0x3, 0x0, 0x1, [@NFTA_FLOWTABLE_HOOK_DEVS={0x2c, 0x3, 0x0, 0x1, [{0x14, 0x1, 'veth1_macvtap\x00'}, {0x14, 0x1, 'tunl0\x00'}]}, @NFTA_FLOWTABLE_HOOK_NUM={0x8}, @NFTA_FLOWTABLE_HOOK_NUM={0x8}]}]}, @NFT_MSG_DELOBJ={0x58, 0x14, 0xa, 0x401, 0x0, 0x0, {0x1, 0x0, 0x4}, [@NFTA_OBJ_HANDLE={0xc, 0x6, 0x1, 0x0, 0x5}, @NFTA_OBJ_TABLE={0x9, 0x1, 'syz0\x00'}, @NFTA_OBJ_TABLE={0x9, 0x1, 'syz1\x00'}, @NFTA_OBJ_TYPE={0x8, 0x3, 0x1, 0x0, 0x9c8e4f90bbeda481}, @NFTA_OBJ_TABLE={0x9, 0x1, 'syz0\x00'}, @NFTA_OBJ_HANDLE={0xc, 0x6, 0x1, 0x0, 0x1}]}, @NFT_MSG_DELTABLE={0x38, 0x2, 0xa, 0x5, 0x0, 0x0, {0x7, 0x0, 0x4}, [@NFTA_TABLE_FLAGS={0x8}, @NFTA_TABLE_HANDLE={0xc, 0x4, 0x1, 0x0, 0x3}, @NFTA_TABLE_FLAGS={0x8}, @NFTA_TABLE_FLAGS={0x8, 0x2, 0x1, 0x0, 0x1}]}, @NFT_MSG_NEWSETELEM={0x28, 0xc, 0xa, 0x3, 0x0, 0x0, {0x0, 0x0, 0x4}, [@NFTA_SET_ELEM_LIST_SET_ID={0x8, 0x4, 0x1, 0x0, 0x3}, @NFTA_SET_ELEM_LIST_TABLE={0x9, 0x1, 'syz1\x00'}]}], {0x14}}, 0x1260}, 0x1, 0x0, 0x0, 0x20000000}, 0x20) 17:48:47 executing program 0: r0 = socket$inet6_udplite(0xa, 0x2, 0x88) syz_mount_image$msdos(&(0x7f0000000000), &(0x7f00000003c0)='./file1\x00', 0xffffffff, 0x1, &(0x7f0000000080)=[{&(0x7f0000000580)="040005ff76000000666174000404090a8200027400f8018afc2383c581f9b224645a8b5a5a9269e76c76a62ad2135dbfbc26cdd2ce45add5e92d868faa5df4c05e19e43c7513d5594d0a369a3371140909acf2db7cbb7e5edffcf2372c720fb53527ba48b1ad9fb555dc4d3872e8d4f6150763edcf3a10644e97c72dbd3acc4a9288e16a8c26b22b2032701f046213be5dff8d40aff0ef78a7ebb055de2e3ede5ea2d6e198dc549cb2b85e6dd1b2e4fcc945a6a6e581ae8b655f64accaaea1f9e33f8a2feebc0df7a28f83f744e8a6d40e8d4eb3d394a21b06b60aca903ed83e83c9b9d57d35b0a7e71888235d296270bc702de90adeddd44ec2622ec0c85962", 0x100}], 0x0, &(0x7f0000001e00)=ANY=[]) mount(0x0, &(0x7f0000000180)='./file1\x00', 0x0, 0x0, 0x0) setsockopt$inet_tcp_TCP_REPAIR(0xffffffffffffffff, 0x6, 0x13, 0x0, 0x0) getsockopt$IP_SET_OP_VERSION(r0, 0x1, 0x53, &(0x7f0000000040), &(0x7f0000000100)=0x8) gettid() r1 = creat(&(0x7f0000000280)='./file0\x00', 0x3) close(r1) execve(&(0x7f00000000c0)='./file0\x00', &(0x7f0000000300)=[&(0x7f00000002c0)='%!^*\x00'], &(0x7f0000000480)=[&(0x7f0000000400)='msdos\x00', &(0x7f0000000440)='L+']) [ 260.165527][ T785] usb 3-1: device descriptor read/64, error 18 [ 260.272911][ T9320] loop0: detected capacity change from 0 to 264192 [ 260.306399][ T9320] FAT-fs (loop0): count of clusters too big (18088446) [ 260.313606][ T9320] FAT-fs (loop0): Can't find a valid FAT filesystem [ 260.434104][ T785] usb 3-1: new high-speed USB device number 4 using dummy_hcd [ 260.584029][ T9320] loop0: detected capacity change from 0 to 264192 [ 260.621977][ T9320] FAT-fs (loop0): count of clusters too big (18088446) [ 260.629243][ T9320] FAT-fs (loop0): Can't find a valid FAT filesystem [ 260.644736][ T785] usb 3-1: device descriptor read/64, error 18 [ 260.774788][ T785] usb usb3-port1: attempt power cycle 17:48:48 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$nl_route(0x10, 0x3, 0x0) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NL80211_CMD_GET_WIPHY(r4, &(0x7f00000003c0)={0x0, 0x0, &(0x7f0000000380)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x3f) getsockname$packet(r4, &(0x7f00000002c0)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000280)=0x14) r7 = openat$cgroup_ro(r0, &(0x7f0000000140)='memory.stat\x00', 0x0, 0x0) sendmsg$nl_route(r7, &(0x7f0000000480)={&(0x7f00000001c0)={0x10, 0x0, 0x0, 0x4}, 0xc, &(0x7f0000000400)={&(0x7f0000000340)=@ipv4_getnetconf={0x2c, 0x52, 0x100, 0x70bd2c, 0x25dfdbfc, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x2}, @NETCONFA_RP_FILTER={0x8, 0x3, 0x6}, @NETCONFA_RP_FILTER={0x8, 0x3, 0x4}]}, 0x2c}}, 0x4000001) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000240)={&(0x7f00000005c0)=ANY=[@ANYBLOB="3800000010000507000200"/20, @ANYRES32=r5, @ANYBLOB="03000016010000001800120008000100736974000c00020008000300", @ANYRES32=r6], 0x38}}, 0x0) sendmsg$nl_route(r2, &(0x7f0000000300)={0x0, 0x0, &(0x7f0000000040)={&(0x7f0000000440)=@ipv6_newaddr={0x2c, 0x14, 0x821, 0x0, 0x0, {0xa, 0x0, 0x0, 0x0, r6}, [@IFA_ADDRESS={0x14, 0x1, @rand_addr=' \x01\x00'}]}, 0x2c}, 0x2}, 0x0) sendmsg$nl_route(r1, &(0x7f00000000c0)={0x0, 0x6558000a, &(0x7f0000000080)={&(0x7f0000000180)=@ipv6_getroute={0x38, 0x18, 0x1, 0x0, 0x0, {}, [@RTA_OIF={0x8, 0x4, r6}, @RTA_GATEWAY={0x14, 0x5, @local={0xfc, 0x0}}]}, 0x38}}, 0x0) 17:48:48 executing program 0: mkdir(&(0x7f0000000100)='./file0\x00', 0x0) mount(&(0x7f0000000080)=ANY=[@ANYBLOB="0000220080000000010015753064bc40c0c25a585e8e3845a86a763978f253baf2aa1e0634c8b174ba8573ac975ecf6ea680342ec2249441eda2fb364f17a8e323dd5ef049dafb4fdb80c95e27878e73bbefc8cda7c23bbe6da68437fe2f"], &(0x7f0000000040)='./file0\x00', &(0x7f0000000000)='xfs\x00', 0x8002, 0x0) rmdir(&(0x7f0000000140)='./file0\x00') [ 261.083883][ T9331] loop1: detected capacity change from 0 to 16369 [ 261.185345][ T9331] ntfs: (device loop1): read_ntfs_boot_sector(): Primary boot sector is invalid. [ 261.194894][ T9331] ntfs: (device loop1): read_ntfs_boot_sector(): Mount option errors=recover not used. Aborting without trying to recover. [ 261.208229][ T9331] ntfs: (device loop1): ntfs_fill_super(): Not an NTFS volume. [ 261.349705][ T9346] IPv6: RTM_NEWROUTE with no NLM_F_CREATE or NLM_F_REPLACE [ 261.357155][ T9346] IPv6: NLM_F_CREATE should be set when creating new route [ 261.382787][ T9348] : Can't open blockdev [ 261.403980][ T9348] : Can't open blockdev [ 261.459716][ T9351] IPv6: RTM_NEWROUTE with no NLM_F_CREATE or NLM_F_REPLACE 17:48:49 executing program 0: write$RDMA_USER_CM_CMD_CREATE_ID(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x18, 0xfa00, {0x4, &(0x7f0000000040), 0x2}}, 0x20) syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010a00)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d0020002000200020002000200020002000200020002000000000000000005002000000000250252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c1001000000000000000001120000000022001601", 0xa0, 0x8800}, {&(0x7f0000000140)="22001601000000000001000003000000080078093a0b2a5b42c8aeb8a98cc71bb3982341d30ba6937b251b7949082fcaf344706481669c2bc1723bb7", 0x3c, 0x8b000}], 0x0, &(0x7f00000000c0)=ANY=[]) 17:48:49 executing program 2: syz_mount_image$ntfs(&(0x7f0000000000), &(0x7f0000000040)='./file0\x00', 0x0, 0x0, &(0x7f0000001140), 0x0, &(0x7f0000000080)=ANY=[@ANYBLOB="636173655f080000007b0000653d1465732c6572726f72733d", @ANYRESDEC]) syz_mount_image$btrfs(&(0x7f00000000c0), &(0x7f0000000100)='./file0\x00', 0x192, 0x3, &(0x7f0000001240)=[{&(0x7f0000000140)="f7b23267f76eeea263614fe753436a427a3ef75aafca90fd461b6645d46ff0c0d63c10b584e0517e98ff68ffe8735182e4061f83b8c22e683c5ccd93175ee300e17f5b3bddbaddf7d19d50def2d6b40806b8e7ddc9e72c2082597638bd88ea45ffe61c1d11fc21451e4302020028e35e064f3a22213080adb4bdcde1026a6a3eedd3c69cde219905f642f8e220da32e1e9f89118b1f5d7", 0x97, 0x400}, {&(0x7f0000000200)="3a783ec4", 0x4, 0x101}, {&(0x7f0000000240)="931a5a5529a244fea52ea647a13be28703a14e365de1ab595ae4a40000f0533ed450a8423765cb2efa1ecb8c1d8d20c2482ca2fca2401e86a360fb6d37d4a71252e7762faa5f080f16dd37a67fc39b383c462d030579300727896ea8c91361479fd4abf1e69bdb02d106b3c647c46cc371f3d4c0dcfcbaa2e1c41d282cdf2c00f6f043292c17c6db5450c83a3be1eb54d8394e50c889bd97ca7cc303850ed246be7faeb664e986b2c8ff64edd1f3ce77ded4abc0ac4811b655e06406b336234134012de123152833920ea403704820ecba941f55a9a4119c34aac1d070c0ffc23582088e44bddae74edb117ce8dc57189ad9902da5aa97480031b4c9d8858cf855352d5990bd122bcc3121bd99fbc85b6f4bde63f2b1cd51a64ab56808495394e51fada331bdd34a43b66dcfacd06a7d469699570454b655cb6ad3546d790acf035a2d96b20715f767553913faa0380ab26c72ea5f680e47cdb87b65879041a48bcb79cab00a2016eceb22b3622c5b5f0cba79f75bebb38bc44ac4f7af672d95077f4e7763da0b3600c07df80e45770ec7ebf6f20a0bc79675284d40f90690aa09879e1bd835e2361ec6ef88b764e93c99567761e9cce0f5a06b62c53cb84611e1204ee9b706f7dc4653267f6df90a9331f4d86af1d89a098410a6a36c7031943d3d7825742c5cd4ca9de61d9e03d85da6366388ea7f9b94c545adafccc6ce2ecda2e0481483737e7521b30e3f104315e29b341375adce0e4c114f65c09cfbf13fce512e9e15d2fdd154ff7336e94cbdfe240d8169ce9cf5e349acafc88ff145b0277f91e91d06ac2c903f65bdd57f15990795a5d576c112fc3c8e151dcde6cb250dc29b8ca467b37574ff1ca06a184445d902d7ab5b637afa91eb23a3b66b30b0b5fcb05c271aadaa8fd6e185d02975c1aa7bf0b78260af96fc2db5ccb558caf53e1aa051131ade74accecc03943ecdf1368ba495083d0ac08c6eb89b19ac881145485efdc4ceb1fb5331a98aa97cb705b5e12ae672a9d9a0647c535f99fa0183751e0481b7b3ef5a4c4ae28558c50acd8b8d41af32c427518da06b2c704997dd55edc8717131649329337ea29a3ead0278638c912639c95fd928674462517817107c58299ee1601cf115c0aee088b6855e23fad3afb107a892246f3435ab813f07b2513e43b5ebd0f5c5948c20a78b1e4055253c816607dde15917eb4acdd54ac7602563e7a18d441df92810e52956160471b44c5af50efe2bdc0866f4fefe63f37c33957fa5a631686098f30d34b1c74a0d0105137ce6177de4435a909f2cd0ef412ef7cd7ac804d010285504bf0a3768287a09605ae896ef11565d4539ca986a013baeb51e29f5e340d1e5f779b8438a3da449b04f92fbbf4be110b83f8437532d4504f1a8aa991d5c8a98d6a7c2ec7a682910494e2917a78d44e81502ce916ca766769268e3ed401658d015ace3ed54b6d6945266d1d0f5ef7036e8ac1fce50611b9388027f1d865995614ff6836cef7b6d30c4a76571c3948131df75c6f3fe83972730847ba48eafc2730c9352b8a28f9dd1d9d87a317ea4925b5b4e752eff896aa8b000db2991ef99282f5fb0707fdbd6d332f6ee9e9383b9c40cd6682467320fca1f58c662fd9e13f1b2b1fc227074e501317589f0de182927e552e4d947dcf71e0cbfa97656e3a219daa53934659516a4b8e0760493e52df63cd0e417f903b41e7013d05c960cb2c0758a7fa39a41ad97113019bbe106e3875027296e403b99cb635ef922d2a0d0b13a2d012fb244e4c765a13fa7c7d32940f0a09d00071bba3c2b27c2d5e67491d927e2f3051c103d6eb49c28705cf9b1717c9ebd2835b3b49a62036125029f7a1ab3a0b2d5af7a488d3d62a2e399d9b82f5b5079f98bf4fd25e4b302b2bca51ad9f6e94251813f33c9eb57d50945fadb33bca370a7a56b010e033d6ca464fc462d990851ed918b1a90e17a5fb551f834fb7aa776c1edd70575b49312dfb454319a4cc35cc6476105bf7b260058866dd2489d34f104d5c2b329b71c467eb573a44acf7071252e6c187885149d8ad06ecfece6afef00958af8fe46462494febbf6121f93e6e888ae500f147e11fc399e72a6bf73ed721fced62c3db861811c79faf1bb02ef737b4241ad484975770716fb605167fdf070e03cb2422da60fb7f0292e00fbd8052882241a9714beb1e63cd2d612f17b5e0758bef38dde910cb02ddea8ea35e24866d9fc64eaf5ff2070e3b0325937d70502f47f3936e7fcc04024728ed71d3df461b50446730dcba93f018d2fdcc57aaef9e7b6c532cf45161f9dcbf1df9f91c55d7bff5474d50d6294d5332fdab9d6a14fad1fa3926197e50ee65984f2fd14653c5a07c91d1a04d5743685100f13b75a4adf893543f7cb8f0849e0dfdcefec949472948c01324dc42248ceff98449e70ae9814c978613d2e7a6996fe4c97206edc6c5e2af435e5b817b87f03e987b74e1b97786f68dae00f9a4d902558bc965ee705cf08a2c6a93f9945a1df43a0db364f73604d6df1c0cc5ba92fd6068a9b62858785f592b93239f5e4e666fee413d109dda0952e677154bd99fd4760929415a0b4efd023a799721293b52fd014a3238300a560c3e317d2c14195ea605a678a4ae7bce4db768ec3946964622f741d440f1bf1306e35e2b11ed1dab412d0ca97bf36566a615b3fa20fd10f478f9dc8c77811166158d6fa0f010ef0e6d08c8e851c973b5c05354530bec716b5d46bf79f5a397fec7d1fccc17b8e107bfa526538997da8758d1900108ae37c9d824c9692ff958197ca6dd6b2c069756807e93130fcc929f643d8168f27ae6510a6c3580e45e1e112bd0715990c4852ccc6454dffb02056f4966832677d6d962d5a49c06b219a2e8624e8445eb23e8f7050b5c50aa268ebe6620b7c913b2a961686f58b31ed7e85cc3bb74d30f5ebf705f9e4cd9c8059ecb5144063aaf3303fbcbb4e05b4e377e12c898528b5ec0c847031bf871f65c4adeda9385b1ee8bda1e7515d4bd76b8699fe11828546b3bd97645e087a45c6333589442ce7c9eef0a7eda58d2fd2ef7d29e349f367f0cfed7afa7c72e52ea07476005757f66bf3b241491ea792907a9bd1724302f685553056edd2126058555e7ff3fa48c80cc308beec4075015e1f4f42db44d32f20ae55d55c3d1311f40dfeeaf66cd8cf6a88f4994f21dd8b81de1b6cbb57dabd25768132570eba2994684dabfe2dc2dd8ad0915962df7d9f98de39569aeb61f83ab05d4c721d46dd54deb52630b872ac67a7813d28b5ef2674a3b7316447a039f6fbd129e3ada663679d4ca97a01206f64e874eee08cb133e934f9c9548ff54ffef88355977852adecb9b37f83f232c5c2fb8decc8110df6d792c5121bdf6a05b7c81893a771edc0d15ff07b2cb743bc7a2b9a23954971d9832267c963f1b681a562eb37087f3aa3cf86de4e4d8be3667984851d4a0e2095682e46d439e46f29b8ac899da1a48531dc77367face8d2c58aeeb9938562ef566f73478fee28dcfae6dd9dbdd0bd0b0dc09576baa43684753ef2bd9d64f906db8906246042cc67e8d17978da69dbb063a718197772f19c0b7cec8c3607c3055a83cde839281df9845819e00d53b444b6391587aee4b3ec72831e2dfbcfbeb3d8ddea5f4df19d8f246dd01cea4512e720233dccad743c5d2f61a560e2cfa606b4a9487e5e678116ba7bad3b41b526dab0e3098bed5fbdc25ccc6c8eb1afe138bdce86e83aa46b379178008bfe3c7ed618983f7eac74265bfb40e15e2f199dfd1eae4fe5bcb7e30574b166229f1d7a170e5add0f1cdda3556174d5a2a7f35785ee8646670bd7d2b499528608f54e0a953ffa2ddc347e723f8e12754e70eeffef5d9c631134912e6d187947851ef28ddc351da3a9d0d41b0fa6e8d6858b635decddfc3dbe5a04989d74452c6cb71ad7df357cfe7d24b799c2d3dc83bac1f9116e40dd42e98bbb74e72260ad42790819235eafe24ddb3471e6054760d7cd4ec9b6a3d6885862f3b7e30c20d9f38a38e3d0a8e6dcd455b9ca6dfaad616a6c0c239d68fe3fa988054efa83a5e2d7b8f18ad09a1df6f37d8b2a5ea18a0d079d2133c5728f1c6025d8c1b6fd0d2ab900cef6bf8c9b84ad18f316189e38f93eb4b32ba54bbb5070e2f3146051f6120b41ddc00164bcfaf95fbed752695d2654032ccead004253a764acd3f35359f82b391f450471a83ac6ebfd09977695e073d1065c016cd2c03ff713e878f7562a08f6e2dcbfc0bd8ddf3decd5eae843146b1b6764676058856c0cc18a9cb409d30e8d0b9e00bb64db8c0be5e7fe17f8ca49b7c53a6c4764c2d3b60826c37b7f65205c667f434ab813c296738e3a71101a41c8dbf87093d1f6723c04116ccde2e51ea88a5ad676384c43fd98772d21fede7658833ebe5aae0a3c162221b33f73253cd348bc86458017b71c79a25a776f3219df7bf7e4546806301c9a85aeb6ba6a1b5b5266e9fe8817cb44d9c4333a1c3b2588be82cf9c76fbd19fb6823b856f55e484c79a4bc88888fee51f5044c1f656f5dbe8e375aaad3a5960e0d591ce1798670a29067f900acd4007226e30c0c0e7a9db1b5703d3f891746a56359b0f7720dfb050dd7599ab506cb31e6fe3b8d8b55a2293dffa6e10a24a9620f14a9c4e66b388957e72c23e67a14ab016eb118aab7a02e5908c8702cbe663de9980519e01c098c25b7a667540f6522948b4d6f0cdd60f5b55dddfadc94854c4e1a6b4b996383456b82e8d367ac6465714b754a3677081067737d3b4f6a6489536ec734e6a96903063743a582b2ff4b0e4f48fc32ee735e4b6fc648869a3729060c5ba25b2ac22f99f559337b6e2658e818bf61792376a240909bf87e079befcbcd1541310c55e6c8e2ab6784a518b69247ce8e6d9c2f0a764034a07321004331ad3e9a4ce0fe665b97d93a1a1b8e58a3e761bdc1e36893def790fad6af318c9d96b3eea79e777d2dae39f58a5aa67816ed4d409b6d592dbf52831ea1c335fc87ec1dacae4f637e29444b6680901086d735ba7c2a369df57437fb415e5cc4d1da46a440ab6e59948ea0135c2c9b6e46d7510163211d3c7f5c3c84c27b4380a3aa13f0b00f9c4b8ec1a169a6d8c06352aafc9eac824b29f98be198612a28788d1f3c9c028b2f57b1f07339bae40028b2f944de43e98225ccb9cabd8fd2ce2371b735f73f5e48a4db52701b5784aff1601cbd2d6d4667b881a6932278aa9f2e776fa4e6ddc353ac2c4fa7f410ccbdd123529ddcf338969499d2ae8d9c1b56173ac1c64f00e23ad0aac2eaa8361be4e8aa68e91431cbdae8bdd490de69ad2bd526a39f43086f87989ef27ed012678afccddfc1387791001a5faa2765a9a2a4460eabdf44329ed3a9c2d27beb1b9e80153b00c40b831c0bfdf1a583ff1f1c169e1ddff42723f2aad93e6d7d4898256edeebc4d642a2bb39200f14bbefac637340d1a0885873711c123a56a5d739d936856791e5a18c05b1b5798e688263db7232726744c17517cad471e0a8157eeb4ed389fbc05536ca2b5db0bac8e356795a4e025b0e5ebe6fe30e4b745032018f47e0c80d0495041cbf3e5a39207af7ec19fc4f7a87f8b6c0c9ad24049f768a250ef49fb2d4ff2d54cb74039fbce3438b2137348219c2c3ac91a99ac11654105f0a91158a1ac271ff55892c1a99232ed0431dfeb6b48b6f6c8dfa72a33dd449c7c374cd4f5300bc2be629e92f8e775e2a036ab88ae5126973f6f6d342458efa5ecb5ae8567a6da1debdee2013171c5", 0x1000, 0x6}], 0x20006, &(0x7f0000001280)={[{@nobarrier}, {@noautodefrag}, {@noflushoncommit}, {@acl}, {@max_inline={'max_inline', 0x3d, [0x67, 0x25, 0x78]}}], [{@defcontext={'defcontext', 0x3d, 'user_u'}}, {@fowner_lt={'fowner<', 0xffffffffffffffff}}, {@seclabel}]}) 17:48:49 executing program 1: ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(0xffffffffffffffff, 0x8933, &(0x7f0000000040)) syz_mount_image$squashfs(&(0x7f0000000000), &(0x7f0000000140)='./file0\x00', 0x0, 0x3, &(0x7f0000000180)=[{&(0x7f0000010000)="6873717307000000911d675f001000000000000001000c00d00002000400000026010000000000000602000000000000b501000000000000ee0100000000000099000000000000003e010000000000008501000000000000a30100000000000078da2baeacca4eccc9492d2aa61d030085492b1f78da2baeacca4eccc9492d2a1e658c324619a30c1803005565c4a273797a6b616c6c657273a30078da636278cbc8c0c0c83051363d1ec8604800e2ff4000a41852805804889990d43003f925486aa4581818a4813433c37fb81aa01003c82c3520d62fc92dd02faeacd2cdcc4d4c4f4d4fcd3331b434373733b634d24fcbcc493580908c48363031400088d604627620e644926705f2fba16ab81850012392cba0f28cc87ad9806233a1721acaa87a9990f4229b0131f700dc0c76a818282442807ee400d2008b6a3509450078da63648000662056016226061686b4cc9c54030f0646a0208463c80255c508a5991838c0127ac9f939296d40614698b6654006cc0cc3470cac708e1132c71800421f11fb1c0078da636080803628ad02a53da0f43228fd084aab3142680046df02a2850100000000000008805cf90100535f0100ab010000000000001d0078da63606063a8482c29293264636080b21860624670312300b5bc09ab108000000000000000000200000024000000bd010000000000000100000000000000dc01", 0x200}, {0x0, 0x0, 0x1010}, {&(0x7f0000000580)=';=', 0x2, 0x103}], 0x0, &(0x7f0000000040)=ANY=[]) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) getsockopt$sock_int(r0, 0x1, 0x1d, &(0x7f0000000080), &(0x7f00000000c0)=0x4) [ 261.858056][ T9355] loop0: detected capacity change from 0 to 2224 [ 262.059375][ T9360] ntfs: (device loop2): parse_options(): Unrecognized mount option case_. [ 262.112780][ T9362] loop1: detected capacity change from 0 to 16 [ 262.129308][ T9362] squashfs: Unknown parameter 'batadv0' [ 262.216737][ T9362] loop1: detected capacity change from 0 to 16 [ 262.218420][ T9366] loop2: detected capacity change from 0 to 8 [ 262.226802][ T9362] squashfs: Unknown parameter 'batadv0' [ 262.401269][ T9360] ntfs: (device loop2): parse_options(): Unrecognized mount option case_. 17:48:50 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)={'batadv0\x00', 0x0}) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r4 = socket$nl_generic(0x10, 0x3, 0x10) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r4, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r5, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r6, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r7, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r8 = socket$nl_generic(0x10, 0x3, 0x10) r9 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r9, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) r11 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) sendmsg$NL80211_CMD_FRAME(r8, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000000c0)=ANY=[@ANYBLOB="f0020000", @ANYRES16=r11, @ANYBLOB="010400000000000000003b00000008000300", @ANYRES32=r10, @ANYBLOB="d202330080200001087042070200080211"], 0x2f0}}, 0x0) sendmsg$NL80211_CMD_SET_PMKSA(r5, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000100)={&(0x7f00000001c0)={0x4c, r11, 0x100, 0x70bd28, 0x25dfdbfc, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_PMKID={0x14, 0x55, "0e4448106b72ea7e78db6742e87ba640"}, @NL80211_ATTR_PMK_REAUTH_THRESHOLD={0x5, 0x120, 0x6}, @NL80211_ATTR_PMKID={0x14, 0x55, "f07e2fdf5fcd2c33cfa246514f7c7381"}]}, 0x4c}, 0x1, 0x0, 0x0, 0x40}, 0x20000000) getsockname$packet(r3, &(0x7f0000000480)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r2, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000003c0)=@newlink={0x54, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x24, 0x12, 0x0, 0x1, @ipvlan={{0xb}, {0x14, 0x2, 0x0, 0x1, [@IFLA_IPVLAN_FLAGS={0x6}, @IFLA_IPVLAN_MODE={0x6}]}}}, @IFLA_LINK={0x8, 0x5, r1}, @IFLA_MASTER={0x8, 0xa, r12}]}, 0x54}}, 0x0) 17:48:50 executing program 2: r0 = openat$nullb(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0, 0x13}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0xe7e000)=nil, 0xe7e000, 0x300000e, 0x12, r0, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$tipc2(&(0x7f0000000000), 0xffffffffffffffff) sendmsg$TIPC_NL_LINK_GET(r2, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000040)=ANY=[@ANYBLOB="18f1303e", @ANYRES16=r3, @ANYBLOB="010000000000000000000900000004000480"], 0x18}}, 0x0) [ 262.835008][ T9355] ISOFS: unable to read i-node block 556 [ 262.840782][ T9355] isofs_fill_super: get root inode failed 17:48:50 executing program 0: r0 = bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000008c80)={0x18, 0x2, &(0x7f0000000000)=@raw=[@jmp={0x7, 0x0, 0x2, 0xa}, @exit], &(0x7f00000005c0)='GPL\x00', 0x2, 0xb6, &(0x7f0000000600)=""/182, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x74) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='xs_stream_read_data\x00', r0}, 0x10) r1 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000180)={&(0x7f0000000140)='scsi_dispatch_cmd_error\x00', r1}, 0x10) r2 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000080)={&(0x7f0000000040)='ext4_da_update_reserve_space\x00', r2}, 0x10) 17:48:51 executing program 2: r0 = syz_usb_connect$hid(0x1, 0x36, &(0x7f0000000000)={{0x12, 0x1, 0x0, 0x0, 0x0, 0x0, 0x10000000140, 0x56a, 0x33b, 0x40, 0x0, 0x0, 0x0, 0x1, [{{0x9, 0x2, 0x24, 0x1, 0x0, 0x0, 0x20, 0x0, [{{0x9, 0x4, 0x0, 0x56, 0x1, 0x3, 0x1, 0x1, 0x0, {0x9, 0x21, 0x0, 0x0, 0x1, {0x22, 0x3}}, {{{0x9, 0x5, 0x81, 0x3, 0x400}}}}}]}}]}}, 0x0) syz_usb_control_io$hid(r0, 0x0, 0x0) syz_usb_control_io$hid(r0, &(0x7f0000000180)={0x14, &(0x7f0000000040)={0x40, 0xd, 0x3f, {0x3f, 0x5, "e9626ee828c584b815a10ba9420eb9c35e0a7dec1b32aabd421d1d7150fa115d5a67ee8e64ad4722630c41fc802699123af340bfb26cd5667e84b00088"}}, &(0x7f00000000c0)={0x0, 0x3, 0x4, @lang_id={0x4, 0x3, 0x807}}, &(0x7f0000000100)={0x0, 0x22, 0x9, {[@global=@item_012={0x1, 0x1, 0xa, "10"}, @main=@item_012={0x1, 0x0, 0x9, "c7"}, @local=@item_4={0x3, 0x2, 0x9, "b450fc11"}]}}, &(0x7f0000000140)={0x0, 0x21, 0x9, {0x9, 0x21, 0x7f, 0x1, 0x1, {0x22, 0x6cd}}}}, &(0x7f00000004c0)={0x18, &(0x7f00000001c0)={0x20, 0xb, 0xfa, "d189737031067c79a8d2c5d77f55309124a33d16f329e5bc97ac562cce8fb2991f9d90ddf45b38674e43dc5e2642ed2aa8be5841342dc39c522d498307a888332b9419dbbdfd29bfdc6b9004f32fbe3da778d807d89ca5655d1cc689e06a2c5fad1c3ec0d8e3c45c66cb3e12b1bdbef862787e42185a195aa6d484d6a2ff11181c63f3ed81ecd9f540de2b39770257ecf4a895ce08576cff8fe5a0c172dccc1cb112da2a49ae2ab844914308c6fcb8ded75fdb96143959f83dba22674672a65333fa8e7292b84ecb9a351efe5e030a4e17b803761077aa575db833a2dda1d8b61240ff0cb5bedb82dcf5b84beb1a02eb9dd1075d1f465f79a992"}, &(0x7f00000002c0)={0x0, 0xa, 0x1, 0x4}, &(0x7f0000000300)={0x0, 0x8, 0x1, 0x7b}, &(0x7f0000000340)={0x20, 0x1, 0xfc, "4a5f40d571f69257f11a4b4ff25a5baa03379d63201cc7912734fb7a698be13044420d6139598e3ff0aafc86d1ec52d0a3c3e01ab85ce070e6e491d840ef002d023399a71927e9a782f66afb0ace5cf5392c4b8401b26e7db3d02cd55338644af8647a10a8ecf0489e59ce929e2061f169fda8ee78c0033f82805222ac56586be26627a21d8c2a7299ba057ea69f1be85ebd644c5355a6a2687119525df0df8f9fce36af62c2e625d36d72f9cdd6ebd5eb1311d126919f1424c90db90521d08527b9e4bbade5973a90944d571575b0cf8c0861cceb33139c7018181c21ec65177b91ad5a8ef3e9bdfe4129d3302c7ded5312b3daa86699e4f36a6a60"}, &(0x7f0000000480)={0x20, 0x3, 0x1, 0x3}}) r1 = syz_usb_connect$printer(0x6, 0x36, &(0x7f0000000500)={{0x12, 0x1, 0x250, 0x0, 0x0, 0x0, 0x10, 0x525, 0xa4a8, 0x40, 0x1, 0x2, 0x3, 0x1, [{{0x9, 0x2, 0x24, 0x1, 0x1, 0x39, 0x30, 0x2, [{{0x9, 0x4, 0x0, 0x8, 0x1, 0x7, 0x1, 0x80, 0x6, "", {{{0x9, 0x5, 0x1, 0x2, 0x270, 0x40, 0x7, 0x9}}, [{{0x9, 0x5, 0x82, 0x2, 0x8, 0xd2, 0x7, 0x9}}]}}}]}}]}}, &(0x7f00000005c0)={0xa, &(0x7f0000000540)={0xa, 0x6, 0x310, 0xf7, 0x9, 0xbe, 0x8, 0x1}, 0x5, &(0x7f0000000580)={0x5, 0xf, 0x5}}) syz_usb_control_io$printer(r1, &(0x7f0000000700)={0xc, &(0x7f0000000600)={0x40, 0x4, 0xb3, {0xb3, 0x10, "5534a229e79cd1cfc9890a1d573c242714abf5545bcab9f6d3c9498b271181264c5653db09040bb8b9e0dca86b796f841cb0d206d8ee6e79773f06c3e747f0538c74bdc1f5190f6bb87fc6747a08a4c359819ac1aaea479379365a2b96c431d87ce202fbaa694c8433f3885cd451c079a078a1180e3359e3d8a817370c4da77178da2bc89bc3dccbad4f07721973bbab8c3b63295e25487f0b0cc5a4984cdd2fc190e75f66bf0729d01e42a1776303ef42"}}, &(0x7f00000006c0)={0x0, 0x3, 0x4, @lang_id={0x4, 0x3, 0x436}}}, &(0x7f0000000ac0)={0x1c, &(0x7f0000000b00)={0x0, 0x14, 0xce, "84324733fadd84d4ff8b2c7f08ff4c4a4cdfa831f61e22fe26fc9e3cf2a8e0a4e3fa297c83eb46ac1ed7273bb35c638cb2174968486d272dd099adc3f3ebc646d964f2f45bef7736ab5882b2fd0bd30b69f39c8ddcfb2b030ce819c8aab88d631d13871c095637a1c7769ebc46fd5bb3ec142aa60c2949e8a84cdcd77ccbffc13baad9807d1033bc39ddbbf5769b6826a36a0f2949434bbe1fd0010d06c1ca32421fa2428b39fe5cceaad1142a038690dc5adcde2c862745838782a259f10d72addf1b824a86829096f2cba13045"}, &(0x7f00000008c0)={0x0, 0xa, 0x1, 0x7}, &(0x7f0000000900)={0x0, 0x8, 0x1, 0x7}, &(0x7f0000000940)={0x20, 0x0, 0xf3, {0xf1, "628c348479bfc19b98fd410a689da109bb930fc3f01894effc72e5718a92380c680b18360527dd854dfce213a6520c5f7097eaba5504f8bcae0281472d8126ed29f346dfc4823ad4c7bb50fb7b08fe9ae75cf564d7d7838550d5abbf4d9679404ae6b546645bcdf9ff8f1a4a4f5cc4755fb6c891f4296b640eceab22c2e7bbac112354531776b8412629d95ac49dd0792e6ac0b7343c5629936d5926e397d44215b019fd4ccacba8879c4aae851c6805d401f32d4873b253aba02ab9b0879ac1f7a74661199dfb746a5bd23ac2dffd88e29053f2090111447d458bc15a692316ed62d97565d5d35e2e029c893c9f8d87ad"}}, &(0x7f0000000a40)={0x20, 0x1, 0x1, 0x4a}, &(0x7f0000000a80)={0x20, 0x0, 0x1, 0x7}}) syz_usb_control_io(r0, &(0x7f0000001240)={0x18, &(0x7f0000001000)={0x0, 0x0, 0x3, {0x3, 0x0, 'h'}}, 0x0, 0x0, 0x0, 0x0}, 0x0) 17:48:51 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)={'batadv0\x00', 0x0}) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r4 = socket$nl_generic(0x10, 0x3, 0x10) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r4, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r5, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r6, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r7, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r8 = socket$nl_generic(0x10, 0x3, 0x10) r9 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r9, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) r11 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) sendmsg$NL80211_CMD_FRAME(r8, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000000c0)=ANY=[@ANYBLOB="f0020000", @ANYRES16=r11, @ANYBLOB="010400000000000000003b00000008000300", @ANYRES32=r10, @ANYBLOB="d202330080200001087042070200080211"], 0x2f0}}, 0x0) sendmsg$NL80211_CMD_SET_PMKSA(r5, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000100)={&(0x7f00000001c0)={0x4c, r11, 0x100, 0x70bd28, 0x25dfdbfc, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_PMKID={0x14, 0x55, "0e4448106b72ea7e78db6742e87ba640"}, @NL80211_ATTR_PMK_REAUTH_THRESHOLD={0x5, 0x120, 0x6}, @NL80211_ATTR_PMKID={0x14, 0x55, "f07e2fdf5fcd2c33cfa246514f7c7381"}]}, 0x4c}, 0x1, 0x0, 0x0, 0x40}, 0x20000000) getsockname$packet(r3, &(0x7f0000000480)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r2, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000003c0)=@newlink={0x54, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x24, 0x12, 0x0, 0x1, @ipvlan={{0xb}, {0x14, 0x2, 0x0, 0x1, [@IFLA_IPVLAN_FLAGS={0x6}, @IFLA_IPVLAN_MODE={0x6}]}}}, @IFLA_LINK={0x8, 0x5, r1}, @IFLA_MASTER={0x8, 0xa, r12}]}, 0x54}}, 0x0) 17:48:51 executing program 0: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f000099e000)={0x2, 0x4e20, @multicast1}, 0x10) ioctl$int_in(r0, 0x5452, &(0x7f00000000c0)=0x7) r1 = socket(0x1, 0x5, 0x0) shutdown(r1, 0x1) sendto$inet6(r1, 0x0, 0x0, 0x401, 0x0, 0x0) r2 = socket(0x1, 0x5, 0x0) shutdown(r2, 0x1) sendto$inet6(r2, 0x0, 0x0, 0x401, 0x0, 0x0) recvfrom$inet6(r2, &(0x7f0000000240)=""/211, 0xd3, 0x10020, &(0x7f0000000000)={0xa, 0x4e20, 0x7, @dev={0xfe, 0x80, '\x00', 0x1e}, 0x3}, 0x1c) setsockopt$inet_tcp_TCP_MD5SIG(r1, 0x6, 0xe, &(0x7f0000000140)={@in6={{0xa, 0x4e22, 0xb887, @empty, 0x1}}, 0x0, 0x0, 0x3, 0x0, "5e5e58f866b9d157d79f5d25f098b770c38cddf57b4d52d415ba11eb6ac683ab36266d48b3a4382526be8ba29f8701dc672c141604c8d5619144e1a9b6b75b1fba205635943903ba04d1c91bcd11d874"}, 0xd8) sendto$inet(r0, &(0x7f0000000140), 0xffffffffffffff58, 0x20008005, &(0x7f0000000100)={0x2, 0x4e20}, 0x10) ioctl$sock_FIOSETOWN(r0, 0x8901, &(0x7f0000000080)=0xffffffffffffffff) recvfrom(r0, &(0x7f0000000480)=""/110, 0xfffffe32, 0x734, 0x0, 0xffffffffffffff39) [ 263.985160][ T18] usb 3-1: new low-speed USB device number 6 using dummy_hcd [ 264.100508][ T3124] ieee802154 phy0 wpan0: encryption failed: -22 [ 264.107519][ T3124] ieee802154 phy1 wpan1: encryption failed: -22 [ 264.129181][ T9414] 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. [ 264.256056][ T18] usb 3-1: Invalid ep0 maxpacket: 64 17:48:52 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)={'batadv0\x00', 0x0}) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r4 = socket$nl_generic(0x10, 0x3, 0x10) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r4, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r5, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r6, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r7, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r8 = socket$nl_generic(0x10, 0x3, 0x10) r9 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r9, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) r11 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) sendmsg$NL80211_CMD_FRAME(r8, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000000c0)=ANY=[@ANYBLOB="f0020000", @ANYRES16=r11, @ANYBLOB="010400000000000000003b00000008000300", @ANYRES32=r10, @ANYBLOB="d202330080200001087042070200080211"], 0x2f0}}, 0x0) sendmsg$NL80211_CMD_SET_PMKSA(r5, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000100)={&(0x7f00000001c0)={0x4c, r11, 0x100, 0x70bd28, 0x25dfdbfc, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_PMKID={0x14, 0x55, "0e4448106b72ea7e78db6742e87ba640"}, @NL80211_ATTR_PMK_REAUTH_THRESHOLD={0x5, 0x120, 0x6}, @NL80211_ATTR_PMKID={0x14, 0x55, "f07e2fdf5fcd2c33cfa246514f7c7381"}]}, 0x4c}, 0x1, 0x0, 0x0, 0x40}, 0x20000000) getsockname$packet(r3, &(0x7f0000000480)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r2, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000003c0)=@newlink={0x54, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x24, 0x12, 0x0, 0x1, @ipvlan={{0xb}, {0x14, 0x2, 0x0, 0x1, [@IFLA_IPVLAN_FLAGS={0x6}, @IFLA_IPVLAN_MODE={0x6}]}}}, @IFLA_LINK={0x8, 0x5, r1}, @IFLA_MASTER={0x8, 0xa, r12}]}, 0x54}}, 0x0) [ 264.422468][ T18] usb 3-1: new low-speed USB device number 7 using dummy_hcd [ 264.713649][ T18] usb 3-1: Invalid ep0 maxpacket: 64 [ 264.720124][ T18] usb usb3-port1: attempt power cycle 17:48:53 executing program 0: set_mempolicy(0x2, &(0x7f0000000000)=0x10000101, 0x2) clone(0x0, 0x0, 0x0, 0x0, 0x0) clone(0x50000100, 0x0, 0x0, 0x0, 0x0) set_mempolicy(0x0, 0x0, 0x2ce59b8f) clone(0x4100000, &(0x7f0000000040)="8a7cbd3fe0005661cb1b1f2b9cc452a6ea392fa98e2a56ce43a2006e7907c69f502b64d9e54490ab2a3850b6e15b8ab94f33ca885b592b281f88b40015bd3d00e752931aa9c1e72595f40d10a8ecd7ad37", &(0x7f00000000c0), &(0x7f0000000100), &(0x7f0000000140)="d84da386556d646a7959449ee964c7dbf681f77f7cb57b4030f8db7226d62481d3925618591f6525b6b50507cb1fc02038ac7e1ad0b72a321ff4909d9c95688a0da7a7fe4f6e7dc57156dd040629b28976ef8d9bc1927a2553686f48f14983c0bc90c63cf746b79f6f2e4aebd3b51feefb37cb899bd7682b6aaa9d23bca971748760661657404291c490586d6b104dc456e6e5730f8284259e667e0159f6fc404db6d284336e9957746a81418ba80f00bca316b7da313f5d94867e0257ba13c79d9157c0e209c95a4ff3c97c8833c6679f9bbc7332e2a897bdd6722f3ecb0c193e925e9c8b17953d2fbcc3ef20a2a8") 17:48:53 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)={'batadv0\x00', 0x0}) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r4 = socket$nl_generic(0x10, 0x3, 0x10) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r4, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r5, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r6, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r7, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r8 = socket$nl_generic(0x10, 0x3, 0x10) r9 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r9, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) r11 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) sendmsg$NL80211_CMD_FRAME(r8, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000000c0)=ANY=[@ANYBLOB="f0020000", @ANYRES16=r11, @ANYBLOB="010400000000000000003b00000008000300", @ANYRES32=r10, @ANYBLOB="d202330080200001087042070200080211"], 0x2f0}}, 0x0) sendmsg$NL80211_CMD_SET_PMKSA(r5, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000100)={&(0x7f00000001c0)={0x4c, r11, 0x100, 0x70bd28, 0x25dfdbfc, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_PMKID={0x14, 0x55, "0e4448106b72ea7e78db6742e87ba640"}, @NL80211_ATTR_PMK_REAUTH_THRESHOLD={0x5, 0x120, 0x6}, @NL80211_ATTR_PMKID={0x14, 0x55, "f07e2fdf5fcd2c33cfa246514f7c7381"}]}, 0x4c}, 0x1, 0x0, 0x0, 0x40}, 0x20000000) getsockname$packet(r3, &(0x7f0000000480)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r2, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000003c0)=@newlink={0x54, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x24, 0x12, 0x0, 0x1, @ipvlan={{0xb}, {0x14, 0x2, 0x0, 0x1, [@IFLA_IPVLAN_FLAGS={0x6}, @IFLA_IPVLAN_MODE={0x6}]}}}, @IFLA_LINK={0x8, 0x5, r1}, @IFLA_MASTER={0x8, 0xa, r12}]}, 0x54}}, 0x0) [ 265.484359][ T18] usb 3-1: new low-speed USB device number 8 using dummy_hcd [ 265.577416][ T18] usb 3-1: Invalid ep0 maxpacket: 64 [ 265.604693][ T9434] IPVS: ftp: loaded support on port[0] = 21 [ 265.736618][ T18] usb 3-1: new low-speed USB device number 9 using dummy_hcd [ 265.835058][ T18] usb 3-1: Invalid ep0 maxpacket: 64 [ 265.844863][ T18] usb usb3-port1: unable to enumerate USB device 17:48:53 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r6 = socket$nl_generic(0x10, 0x3, 0x10) r7 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r7, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) r9 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) sendmsg$NL80211_CMD_FRAME(r6, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000000c0)=ANY=[@ANYBLOB="f0020000", @ANYRES16=r9, @ANYBLOB="010400000000000000003b00000008000300", @ANYRES32=r8, @ANYBLOB="d202330080200001087042070200080211"], 0x2f0}}, 0x0) sendmsg$NL80211_CMD_SET_PMKSA(r3, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000100)={&(0x7f00000001c0)={0x4c, r9, 0x100, 0x70bd28, 0x25dfdbfc, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_PMKID={0x14, 0x55, "0e4448106b72ea7e78db6742e87ba640"}, @NL80211_ATTR_PMK_REAUTH_THRESHOLD={0x5, 0x120, 0x6}, @NL80211_ATTR_PMKID={0x14, 0x55, "f07e2fdf5fcd2c33cfa246514f7c7381"}]}, 0x4c}, 0x1, 0x0, 0x0, 0x40}, 0x20000000) getsockname$packet(r1, &(0x7f0000000480)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) 17:48:54 executing program 0: getpid() r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000000), 0x803c1, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000000000/0x18000)=nil, &(0x7f0000000240)=[@text16={0x10, &(0x7f0000000040)="45060f98150f20d8663508a20000000022d8650f01f60f20e06635000010000f22e00f01d967660fc7b1120d000066b90902000066b80068000066ba000000000f30650f01c9b812000f00d8f3ad", 0x4e}], 0x1, 0x0, 0x0, 0x0) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) ioctl$KVM_SET_USER_MEMORY_REGION(r1, 0x4020ae46, &(0x7f0000bf7000)={0x0, 0x0, 0x0, 0x2000, &(0x7f0000000000/0x2000)=nil}) ioctl$KVM_SET_REGS(r2, 0x4090ae82, &(0x7f00000002c0)={[0x0, 0x7, 0x1, 0x0, 0x5, 0x2691, 0x4d1, 0x0, 0x4, 0x0, 0x0, 0x0, 0x400, 0x0, 0x0, 0xfffffffffffffffc], 0xb000, 0x60000}) r3 = syz_open_dev$vcsa(0x0, 0x0, 0x0) ioctl$KVM_RUN(r2, 0xae80, 0x0) r4 = gettid() ptrace$setopts(0x4206, r4, 0x0, 0x5) tkill(r4, 0x34) ptrace$cont(0x18, r4, 0x0, 0x0) ptrace$setregs(0xd, r4, 0x0, &(0x7f0000000080)) tkill(r4, 0x2a) ioctl$KVM_RUN(r2, 0xae80, 0x0) ioctl$KVM_CREATE_VCPU(r3, 0xae41, 0x1) 17:48:54 executing program 0: bpf$PROG_LOAD(0x5, &(0x7f000000e000)={0x0, 0x4, &(0x7f0000000040)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x71, 0x11, 0x19}, [@ldst={0x7}]}, &(0x7f0000003ff6)='GPL\x00', 0x5, 0xc3, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x8, 0x10, &(0x7f0000000000), 0x10}, 0x74) 17:48:54 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r6 = socket$nl_generic(0x10, 0x3, 0x10) r7 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r7, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) r9 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) sendmsg$NL80211_CMD_FRAME(r6, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000000c0)=ANY=[@ANYBLOB="f0020000", @ANYRES16=r9, @ANYBLOB="010400000000000000003b00000008000300", @ANYRES32=r8, @ANYBLOB="d202330080200001087042070200080211"], 0x2f0}}, 0x0) sendmsg$NL80211_CMD_SET_PMKSA(r3, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000100)={&(0x7f00000001c0)={0x4c, r9, 0x100, 0x70bd28, 0x25dfdbfc, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_PMKID={0x14, 0x55, "0e4448106b72ea7e78db6742e87ba640"}, @NL80211_ATTR_PMK_REAUTH_THRESHOLD={0x5, 0x120, 0x6}, @NL80211_ATTR_PMKID={0x14, 0x55, "f07e2fdf5fcd2c33cfa246514f7c7381"}]}, 0x4c}, 0x1, 0x0, 0x0, 0x40}, 0x20000000) 17:48:54 executing program 2: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r6 = socket$nl_generic(0x10, 0x3, 0x10) r7 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r7, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) r9 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) sendmsg$NL80211_CMD_FRAME(r6, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000000c0)=ANY=[@ANYBLOB="f0020000", @ANYRES16=r9, @ANYBLOB="010400000000000000003b00000008000300", @ANYRES32=r8, @ANYBLOB="d202330080200001087042070200080211"], 0x2f0}}, 0x0) sendmsg$NL80211_CMD_SET_PMKSA(r3, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000100)={&(0x7f00000001c0)={0x4c, r9, 0x100, 0x70bd28, 0x25dfdbfc, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_PMKID={0x14, 0x55, "0e4448106b72ea7e78db6742e87ba640"}, @NL80211_ATTR_PMK_REAUTH_THRESHOLD={0x5, 0x120, 0x6}, @NL80211_ATTR_PMKID={0x14, 0x55, "f07e2fdf5fcd2c33cfa246514f7c7381"}]}, 0x4c}, 0x1, 0x0, 0x0, 0x40}, 0x20000000) getsockname$packet(r1, &(0x7f0000000480)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) 17:48:55 executing program 0: r0 = creat(&(0x7f0000000280)='./file0\x00', 0x1) close(r0) r1 = creat(&(0x7f0000000140)='./file0\x00', 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = socket$nl_generic(0x10, 0x3, 0x10) r5 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r3, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r6 = openat$incfs(r1, &(0x7f0000000040)='.pending_reads\x00', 0x0, 0x14) ioctl$sock_SIOCOUTQ(r6, 0x5411, &(0x7f0000000080)) sendmsg$WG_CMD_SET_DEVICE(r4, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000002c0)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r5, @ANYBLOB="010000000000000000000100000008000100", @ANYRESOCT, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) close(r1) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) execve(&(0x7f0000000000)='./file0\x00', 0x0, 0x0) 17:48:55 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r6 = socket$nl_generic(0x10, 0x3, 0x10) r7 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r7, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) r9 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) sendmsg$NL80211_CMD_FRAME(r6, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000000c0)=ANY=[@ANYBLOB="f0020000", @ANYRES16=r9, @ANYBLOB="010400000000000000003b00000008000300", @ANYRES32=r8, @ANYBLOB="d202330080200001087042070200080211"], 0x2f0}}, 0x0) 17:48:55 executing program 2: ioctl$FS_IOC_FSSETXATTR(0xffffffffffffffff, 0x401c5820, &(0x7f0000000040)={0x8, 0x9, 0x316, 0x6, 0x9}) open(&(0x7f0000000240)='./file0\x00', 0x102e0, 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f0000002100)='./file0\x00', &(0x7f0000002140), 0x0, &(0x7f0000002240)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x0, 0x12, r1, 0x0) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50}, 0x50) [ 267.685463][ T9479] netlink: 388 bytes leftover after parsing attributes in process `syz-executor.0'. 17:48:55 executing program 0: r0 = syz_mount_image$squashfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x1000, 0x1, &(0x7f0000000200)=[{&(0x7f0000010000)="6873717307000000911d675f000010000000000004001400d0000200040000001e01000000000000f5020000000000009902000000000000dd020000000000000601000000000000d4010000000000004d020000000000008702000000000000fd377a585a0000016922de3602c01764210110000c14f5cae00063000f5d00399e4bacd2526994d512eda5bf000000004a5579b2000127640fa29cb09042990d010000000001595afd377a585a0000016922de3603c01c9a082101100000000093fc58dee0041900145d00399e4bacd2526994d51508fe16ca84a7aa3689df00988896660001309a080000002ec42d993e300d8b020000000001595a73797a6b616c6c657273cc00fd377a585a0000016922de3603c09401be022101020000002be6a37de0013d008c5d0001001eb04f262e3c2f422bdb8c111c2eea0ff1b7f87c3cdb85351ee6dc98bdbe86642d312630d1c1177c3f02eccf24fa6458574e2954843dbd6bc98680050321638c7a93375db1e71bae623d26e9096427e197374c50e829fa416bd93eb4fcf067eb650be21878e9ae58de233e584bfa0f44d85900daa964d53b67d7a1215e51928921aee72793826611b43c00e599fd790001a801be020000298353f53e300d8b020000000001595a7780010000000000000003000000240000000200040066696c6530480001000300040066696c6531040000000000000001000001000000000200080066696c652e636f6c64860001000100040066696c6530a60004000200040066696c6531e20005000200040066696c6532e20005000200040066696c653338800000000000000000860000000000000024000000000000004800000000000000a600000000000000e2000000000000001e010000000000004d0200000000000008805cf90100535f01008f02000000000000288000000600786174747231060000007861747472310000060078617474723206000000786174747232108000000000000000000200000024000000a1020000000000000100000000000000cb02", 0x2ef, 0x5}], 0x0, &(0x7f0000001340)=ANY=[]) r1 = socket$inet6_tcp(0xa, 0x1, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0}, &(0x7f0000cab000)=0x6) chown(&(0x7f00000001c0)='./file0\x00', r2, 0x0) syz_mount_image$vxfs(&(0x7f0000000f80), &(0x7f0000000fc0)='./file0\x00', 0x6, 0x9, &(0x7f0000002540)=[{&(0x7f0000001000)="48b61126eb7c8c2fdc5292484389419bdafe58ddf78a006f8a51b485c285795940bd88254662cd36f7857b14648b54ee4a0588170fe46418c21589119893f5fb90715346945b150564599a5cfb47a8d22dde17b4e74ca20d84014c9e8b0b8e61ab64b2328433701a5751a31dad0440a2e67b3381d9456379fa5590272eb041eea14a46a58184af90994a013e7cd14fdc7f0dd5fe91c2875a68e2f17b2ac3b8ca6935fa60f24c843d44346ae44ceb995e751a17e31281f6cbd56c7959fc4a8b1529179228e6cd126b8d4af342ed5cb1f35b6608", 0xd3}, {&(0x7f0000001100)="554c33774814e371e764cbc1d99be375c5edc51551291adde5e428d71024b6c1c7070af9b69944d0a2fdec74023d756146b65b7a0f28afead53529409cf09f17d95e48396f07665b23171c58d22bf2f4d98a614259c69aa9cce5b6c5f9e0bbc3500ea3a3a8762c3a1f123a4eab0607639837b580a97fd916b80efd5fdb891c7cc58ea7aaa9bc83da1d62f7beea06bedde83a6a37acd09e8b42e617697afb59f8880cd8a717806cb651dd8b030c208ad3082d5ab8f772bb0151aec2aa3390f0b21541eb2f117588438e10e0f98e07801bf469a72bebd7b35b4c5242f90aa7717605559b51ed1b4a76d7e63eec6f1706c9c5df58fcc4f8f2e25aad2f7dddd6fce63316b36910f72c0b117adc9b4e2a449501f31cd15b9ac07f0c9fbbe020ea1afbdfba56427ba7c1c857597908f8af003614f2ab4bd52bcc44e8e2cf19a7b0652a3a041b5b535b784d7bffe9bbf01f91da9049b6e6d4d8d31a4048ead0d159ef427f6601e9fcceb88a8e2e2589e839929f869f213ef1a0ac912e5e2099c368d26bd6cce4c253f136eb3ca48b898eb7dcafc50818e84583badbb815ecf82e74587262aabfe490ec8d26b08948e59f7280d50dec972d966286f4cd61c1f01ccf3613e5a0c150b487e30f48e509d7af98ea8b0f118994023f53a0f7755c83061208ccb97f74368d963c668dd186b31362f81594b25adcf4d3977ef8b12ba265696c97f0f48f9aea65423987dc31de0e7620fd25b0e703458f05020aa23d63f6b60d35112bb7d59bc4d0bae0ffec3f1d641f85e02ba6f0a0f0c2d9ac69da70d3cd1c7a90113d3660fe425f6ccfb0e18435fa596c2761cd4faec281d1c2b0d9bcdc64e626c4c0fffab74aba7f0b0ac36cb5ceb430457c521317ac9e6eb70536ad9ffb59a69099d7d735704f8f1ad322d638ca19213247f4ea03db0c2166e4277a2ecfb60d0d4288f0acdedef3d46ebf23206931fdc4ed19ab2b96590b674f41c55b36d0e3b08f40a4c39ca50708af6cf72432ce4b9a206ad08d9e9c1d4545e561cb15af19b6bc3250861a7102ef33478ac5f0f10624b721062b227f4da43b00ae6d5b80216d5a715c618ae85b84b438c2ef3d74c54bac870ca56794e74a86656ffe29363f11e0f979ced39312ea9ccc6b76d2019eb856a3ad4f1f1d0c23f9f7e68fdb24db7b7d940ceb679abfeb554a88d997e259e90d012f52e19c0c9c4c8db8801c2e701f9072c47cb9d3fcad5dff03007165da43951b99bb37575a3aeb2aae86b1ad6f8687f7fad5df03f7e8bffde5add60f4c52dc6e02a47958315e347bd23c62041e3d8e9a506350560c0a22d5460b085fffc3f31660c3c61f27dea43f181262e998feadeae764b5248831f0377b58fbbc7005ee80e05055cb0327a173d5c98f099b305c745c0778db41a9cfd49d3e7adab8319f02b50b61d286efe762bce237539cc609480e9351d309958adb732f42686db99af1d3e256584a1d74d007f9032214869b600ff0b5af79f02236fd59893847c8a5e338cd6ecb086f6ea3df73428b8013eee33ae9b6adee93d60c59dfa46fd635587267a36a5f4beb8dbab4f47187d6e984f767718c69783e7b5a04d87e42de5823d602c97ec3763a1153b510358390911831e06a7517574679088fcd0c91d9167728e8bdae8c6dd25992cb022766218a883c6d4504e628e140b9b0cd95cf2b7f0add4812e52118bde4deb1abf12e23c0c3eeceab7d462a31a110f5e7c6922e1451c101940224dc8d679ed776b2a24d0adcc6b5519fe4e6d74a78ab9fe3b13be22447773713994226d049026cf488e8faba8fae94e955a6f4ae0a82261434178adfb473a4ed5d3b58d74f36a9002618fcf93eb470875d60f98a6bf53ac74ebc35f16ceead8dd3f5bfd684021208a3ef04faf569523e71ba3cb6f868d06549b03834f50f5c6803522a93847ab45fc6dc31a7b4d4f28cc6e3002350aaf16936d38270919dcf0673b3ffa3ea592d0ebe53bf519ca5d55d91ae12077cca8712d43be735c5810087823a503d60986af2e70d57aa83144f586e77c31de16c62e480502f8bb78f4ee21083746ff83acdfb06efbcf2cf5a02e5e1cf76bce8df2310cc71b9dc5da90502d880155b5097a6953619b60c4b96e198fa0c9c8b4d4bae86fff42978df6b2faad1421b521db40ea401efca7d74aac78e1fa464fb17540bcbf44bdc111a5374b310334b34c71ce50fad33c574c71829c9758e2c9052a83166702b077dda8f093c8b85026c5f358443627e19a94d736788cf7cc59373c27dedc0d58f06b000cb24c560a19e73dba0230110ba804388602f7199dc0507b3bd1dcc7f77227a962a4ad6e357d12b49ae137ebc6fe37f82537f8064d636a143e3665687f8a28a6a13a065001cb6e6f00d1393e72acb6faf37ad7515115d973f3cd9c81d65ca12267eafa459047ed1d6ddeaba69d426f3291bb75b4ffecf74d1b90fda5e1293f499d8c55c1be0ca71f914a6a15e8aebbcc71f1d591efa1eeb1da3386e4c91dff509446d06cd662f56507314a7897c66e5246f16d2b383d403ea4adecf81f9a8c5868fe9a7dd8843acc24639efb40fcbdfc5d1bbde41d55b2aaee3783ec18486755b1b4da603f6ca67c95bd3b37b08ce332c2fee2262cf7a18ff18367f44a36021858701cbf54d0e96dfb705d5bb8f1eb445e920cbba0fab2199efd53a8cef6ef4e776be6ac9712b3bb1b3e335c979b5d6eb1e88aad06dc3c66510fccfb3aedbd12d0f26743f3a5a38b34c86555a81ee0bdca8855aa2b7151eb65656c4cb1b1fdacb173bffa0a996d74c9f02b6fac4199e04b24493a47d5529c23f13bd3dda65c4c22f8f6b5af2e829a2e0776399afaf38c9f66a746e225d94f90be8e18993506cbc4ea258aa5c5ab7550f8b45c6f614f34461b2e4c9ea479cb934f365d61534f63406809947227c0ed0e650cd8c73c902c76c71b81d997122cfd312aba9916c75e5c8a93bf49d25f3d1431a92f4ced01c56f4155a428e4415154f5ac7dcf3e73a62d600313db4ec2f27a31a254ac1170be813a7a630f06463a1abab51b1cca97229f8fa5416efd6c806a99c08ff00b7871db1eb4d975ac3d46d17240e3d465445e027a90dad3ccdf84aa9727be95dfb4e39b6dfa339d2ad1db5a00d5ce46032eed7016de6fc402af1beda57677e4c5fa83bfb89d5dba5b04994696c822d1c3eb0c94e8928eb75a89ed7d5bdd02c205ae71741aff34191942c0d0837fe5b3b39194c6a5c6a9025094da10d9ecf0c5402ffa46ac4b76907f49af32fd8a8ab90083a72f4060ce948bb1d79a3ef5d39fd085e11eb62cf9817964dc8e0c0aee01f6863db8dc88d99e80b6a3776757136944d33940322c8351388439609b26623d4c3da60c4fae3c072e594892af7e44443d90baa79a9b4b412b7d77905739c1ff2879e9bd2ba842f739d27a9db9b60607cac6f43e4d73b29721985ab7fe75e8d857613a26b57ef4361c18d2f41caa0160c798074ce490cdd2855cd118129b71f4a7f80d53a81d4f048688dd4ba76c9eb031577d8f8cd28f5a762c3e19414e457ec40471ef966534607e162fd789f35fbe3f22acf51f95996ae3b0dafd4a5717e07f287f73eb6ef2d9cc94779945e9180494716c2d1c5fe21a643c0a3f8d169eb2b2ecd17e0696461ffdf4039f6e5d26cc52f0dedb787aa893e717e5d8d612d389fc2cb8ea057bdc28140382d3f43595e8f573159450137aff67c04752058fe0486010a81375bcc2590cade52214f795d37c7083c13a8c4cd080e9fc97d90cef979390d122b13f0d6302088bdc9d20010e8f44f0a0c8bd81da0966dfabc8644f1ccf29238ec1fcbd94e65eac9c511dc2d5da1cc07b8c59a7e8777d7dc8a09a793fe46dc5675ff87c0c9577c712ba67379375568947ce0b1c555ab0938800b279595753e70d24ce417cc6f696c7e9c14e40e735ef80a46fdad0adb4f792287dd7c4f28d351795fa69564a686b7214f8fcf7a562b3dd6e2f0c1dbb97ee887f042f2b3381f1830b7c13f4c98029afb604fb54ad36ac9a1b54509124973aaa57813efab76f95b76df722032dd48541b5e8d4e9287da0d3e94994e56ae4d41643e9f9597a9a39cb6b0925cb9441e1114f064520686a67446efc5d4192abd0d2bc9fa0a66723afc421f920c89268843b9dbcacb02d74af974faab076d7ee8687d78b31f784bd0ddd29924c0290acde36f2dbdd93f0087955ab555de6292fcf37b2c35b0f0370291029b860c631c0002d46e4dea6d0af055ff2ab49978a0d082e5c8c56501d5f03a4e010f25627c55e4d4e06ba44205b922470e765631511be854dd29995a2216c950f98a5e6f970b9044c29ee9f6d09da29b853cceeb31b707e0d96fd94efa2c66beabd3382a688e395f50db46082a1017e558ad69a20f7996afdfb73cf691f2632ff5fb4ceb7447ec49db74f6e1d5454a54cf76205b408c1cfa8cdc9541197f18c32dc135179e28e19ff6bee8ddae6b7561b4d239a079e817e37ddc9081d49e86deaa50c5b35a63b4f3fe36bf397360f184eca9d17d078315a4e713698dce65eb5031bd2d48a6ab28acd7d64277aaa516de0a491b3d2d80ee3b6e3244db4982bef127dae6a840e51d43f4896c78f973163ac6698f1b03e57d92a268c7247b1c1b69f001e5ba015d9955e5d8ae5a51e0fdc5271eafbbcf77116b19d23896d43da64213e7c5bc1b1be1fa300a873b272ace8feb7711d647739599ec569c2fd32613a12246062568a2e3ad5353a62fb68ea947707028e434a10e4486e671bc469be364c96f79d80b7cf733c3c4c6b0548afcaa2da205283aee6a732658c41fb526beaafb65dac7e2f7ae6c895c56ec6d5756fbb4ef9cef9687afd2e2e97221fcc69b2c22f41ed1a214e47733332764ec9e3f3b23b4630f2704092c06ede23532ced6d1f70cdcaec55c9e733135a6f167dba37fe98014db96e710664b6c6eec1b465bc6716603605c3f94de9fc139ca81bdc8adb7fbf310664e10e73dfff0dfb3f6b536ccd2f2b5a3469e585c6d6a9e6f74911615f76e63a36adb12080551fa2a2eb397eae847ba89b2e73f29f211391e69975b97f14957b80f960d2fe1fbbf3eb92c6916f8db2dd6494703e7d7c4a62029263d56bcbfa6f6ea87ac73b8547c20f1ddaa5695d3a5391975efb02b28767668e2f1da20a1cbf4f3d0d45d5c1fe8c61edbf5348c129c33cb332d110f4f94bc57c243e7ca510b7fe9d787db63ab5118d31501cfec1a047ecfe600ad28f19c3213abf4d98b962e4a39c3c42e6f2ab8564fce3437709fd757134de5a0fdcfb77a7d23a64717681c3ae2562b50c777bf70809fd1411f97b30378870625344a1c5790a81099aa067d49742312ba2f430d69079c72fe7cae4e741a420f1efd38633fa47ba2e09e50fa38b8ea856cc6fb39045ac5c3d44240150fcb16b2e84b7cfb9f400dbde00526753b77ed55716dcd5abbdc5bbf357d9a8a3cd6528b979c5af43354f3f2d2a513de1354dbea6baffb3fc33c92163e3b76c00490406d842113a55c1db605c90651a21c4b858ec1e9c2fdb31caaf6d8a0ddbce6d5ee01dee498471294adc66c45625910c9651f83ad3f22bbcff9e48aedf0b9ae63972bdb819262e0c21a8672f7d04ea68c146de71fe53737157875635364a1aa426c8689f5207f4352fafbd73c98dac6c186743d651c84de39281e0b21df4a14e94edf87a7b3e416c77c53c0dd0f2d3bb34a69f0975546e2f3bcca05b77ca9912dec5646e1942faca842bf27618cd5527d4749fd00326b32167572afbc4c1556d72c1cbb12", 0x1000, 0xa44}, {0x0, 0x0, 0x8}, {&(0x7f0000002100)="379742fb077f23e36583b5d0568d16ab384e18838a12ba298e01d94dbe908a877b0debe98abfc5c55ab624b1ad3857d64e6ab45553a70ead9e192bdfa24872d61b3dd40fb4a0ee11c1db55048aae81d322e0674b7742", 0x56, 0x200}, {&(0x7f0000002180)="daa4d6003ffec3be487339a258cc4df74853604be10d4fa14994e6a4360f0be42ffeb253be6c711b459d09681b7cc4990f955ba01a065295051e59957a16c9e3a8dde69d1e482e87ead9cca5f9ee97848cf9d8dba17d0fe95d2d5e34ec702a4333f9ccb82cc94b40dae28dfd21b4f892e134885a8de796569be5c7e255f21bc6719aea7f7add7930c639e3e99f63e846ccb8ade955bcbc8a17d887f7ac027de432d228e4b4791ccfdb9c214f8426589669728e27ea0ca0292a60aef7d8e310bd59b9a156b5f6898e6877021b1b5cdc8dc3ebbbb2668b6a5e15bf936f0f3719fe530f52", 0xe3, 0x33}, {&(0x7f0000002280)="42928a93eed2bb7ee1cc95a61486fc534359fc1c4f2eddbdc20aadc082ad346c1e097bb93dced72bf332d068d226868d7e4238fcf287179dddf84c8a17099876e4a3942cf7d55ad00ac335786de8ba55edaa3eae5c0d49774b11dff373c1052f837cf5ae7cf0f07b4ae5b574ea43ea950a197245c4aeb4a8d48507fcd916dbc1cb174cacd595d98ed3b23c4311298819118f9b1778196c9dd2034be9bb3d90094fdc7b10e6f0de3d7975b5b6c9a100a56f14a04d625197e71174c8de6962ed71468c8a259717e8f060083af9de08d7d599ee17efecb05482e4b51158a6d3f2dce42f29f2", 0xe4, 0x7a4c}, {&(0x7f0000002380)="8063645addbf2f1dd127d83b27aa2b156b9c2bf32bb6b624fba0295d100725c0cd17a4b2e1ca8514b78660f0790c973ccca9d070a8559e466148d4c5d74f8386822baf9303354bbac0b5b3f795c3884b383ab79a0e4a5d3b6cf18507f929303578182d166a4835aa6985abb14639483ebee09c2c11d03d7495ef8ef802eb098d8212a15fcf5252f02f790ea3fde723e643625710ba9924fa96b624265090bfba12d1d7fc7caa88e997fa45ce81e01b91a496d629abacd3ba87a42598500814d30b1f19bf24edcd8dfc", 0xc9, 0x5}, {&(0x7f0000002480)="f99407982d463b2d3864205d250bc896d9e270cfbd1e64cf15b9ac4814dc6b05f9899280f924750ae2697a0bad3e6db547cffff59b8c3c08df2812a5e425fe2869e34baa2696", 0x46, 0x38}, {&(0x7f0000002500)="23c26d191025fddf9bd874bcf838ad297445f46f3b1b5359adfec3268a1ad9ba8f15afba8dca61f7f4fc58d1632d4e519ea1", 0x32, 0x3}], 0x24, &(0x7f00000025c0)={[{'squashfs\x00'}, {'&.,+'}, {'&}%{\\#'}, {'squashfs\x00'}, {'\''}, {'@'}, {'squashfs\x00'}, {'squashfs\x00'}, {'u,+&]}]&\'-'}], [{@smackfsdef={'smackfsdef', 0x3d, 'squashfs\x00'}}, {@func={'func', 0x3d, 'FILE_MMAP'}}, {@fsuuid={'fsuuid', 0x3d, {[0x35, 0x63, 0x37, 0x63, 0x38, 0x57, 0x62, 0x31], 0x2d, [0x37, 0x35, 0x35, 0x34], 0x2d, [0x57, 0x33, 0x62, 0x35], 0x2d, [0x35, 0x34, 0x64, 0x35], 0x2d, [0x33, 0x65, 0x54, 0x33, 0x62, 0x33, 0x64, 0x34]}}}, {@fscontext={'fscontext', 0x3d, 'user_u'}}, {@dont_measure}, {@fowner_gt={'fowner>', r2}}]}) r3 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r4 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) ioctl$BTRFS_IOC_SEND(r4, 0x40449426, &(0x7f0000000140)={{r3}, 0x4, &(0x7f0000000080)=[0x8, 0x9, 0x87, 0x2], 0xe4d3, 0x3, [0x5, 0x7, 0x4, 0x7a83]}) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x3800004, 0x12, r4, 0x0) r5 = socket$kcm(0x29, 0x5, 0x0) preadv(r5, &(0x7f0000000040), 0x0, 0x7, 0x2) recvmsg$kcm(r5, &(0x7f00000001c0)={&(0x7f0000000240)=@tipc, 0x80, &(0x7f00000000c0)=[{&(0x7f00000002c0)=""/94, 0x5e}, {&(0x7f0000000340)=""/150, 0x96}], 0x2, &(0x7f0000000400)=""/224, 0xe0}, 0x40000042) faccessat(r4, &(0x7f0000000040)='./file0\x00', 0x10c) r6 = pidfd_getfd(r3, r0, 0x0) sendmsg$kcm(r6, &(0x7f0000000f40)={&(0x7f0000000540)=@xdp={0x2c, 0xe, 0x0, 0x29}, 0x80, &(0x7f0000000b80)=[{&(0x7f00000005c0)="3d343ffd4b591c2d2ce346389ca01de23f27eb9b8c6942f2f7a6fde9bdf10a916f0dce69c65f1c86c6bfb0aec9445f0246b4596d47f3447b592b74c32972c9923848aaa9e82ef298647c7b82673649bce09700bc5ee443d9589037821d26156609224bf65b92d7292beb2cc4c6c32b96790d239482f8e9a5377782f99c82b2721a48a5ed77f53fadb0c6e78b418334d6ff1d2c4fb98e4db735f88e35423b5748a1eb4addd84f91b6a82483541d1a7c51510eae", 0xb3}, {&(0x7f0000000680)="8d", 0x1}, {&(0x7f00000006c0)="be22cc5da066a127309fb4443a21af3696b59365514482ca14f4edcec7238a7528983820d550f72fce4fc054977061f9cbfa", 0x32}, {&(0x7f0000000700)="8119efd362fc320278c834914c9c8dd408e4e73e130cce6bd2927ee087b86c55", 0x20}, {&(0x7f0000000740)="ff4aa75f1972ec01df4b3badf8db33fb9bd7fcf0860e1b9e0d6447d30e264212ed5a4ec6630e4966729fb0714fcf57909de660f9e04826b2d8f782d3f2ca5d6fb954d4846040935c18a7d5cfa32ca88656262023c9b5c42eb9f759a14fd152d910adbd0197118be7c37e3acc50799670d0bdcebacdce7564a7a2d87508c0becfe61879383633cf1707fb3e85d146d97eee70fd0fede2f4617290", 0x9a}, {&(0x7f0000000800)="d5d4cdb2e1eb85c1c1bb6ea74efc0030c099756975d6098cc43959637c811a99eeda66a7360e22e3fb4f3d3cc86c96d8ee5a6905dbf0a9005348630eb73655cd8b1ce0250a1d54dfbb28d3f90ae07a3aec79186efc965e46291564171c5d950096756ef900e81fcc92a93ab74299426f69eb0b99b4095a8d280112ce8be70e470e003772e172ea66019c76a903c31f50dc26306ad31838f69f6343a4e758d3d142b2ebd3bd727941397fa9b2751ffb862fff9c6d05adf0b18d23da94b448f2b2e2539421e2906316c15cc21776e86433bfde2043d60dda885ed03b958cc39ace972df0de17b1", 0xe6}, {&(0x7f0000000900)="f9e928d014a10840096978cf466cd09baf4a9a6f328841b2ded93b4d5441e945732ce390b732", 0x26}, {&(0x7f00000026c0)="20c40d74c3afecace8336d122797a9cdbc09ec6ec0aec33cbb53fffe348cb43780531f2b4ecf94c137c87d4ba16cd70b87b9bf693e60364cd69951f28d9e6f7667bdfd5aaf0a87e0ab2716245ccc8cfb285a40fe244c335cd487e479fefba1bea60dae4422407bc940ef4aa7ea86f23400ff8782d07e189e2aaa07acbc5f3f3dce8632360a5ac7fa6770352ce3a16accfa9266061bb1bed3f49041742cdcb629f0fedf8bde4bf4b860306be1742b88c9fee71464c7629e8e0325d06141cee5ddee6c1ed31771315f69275f4af68a75d1cb7b919d70e8d1c443db46fe12692528cbd63e10925b5cd9d2e0aaa3066b66b0c2bd4c54a7ad64ca41", 0xf7}, {&(0x7f0000000a40)="6f3fd5b4ea3835005b701ef7ae742c233d32070311ca08cd820f0cd43bd470666e3963a02d1a9e7ad8a73b8f2428e35d2b7506f54b831e98cc5861819eacc93207021de84556faf7b6cf57205597be67b5aad962723d2949a8831b70c6f687f92317551d6601659d31498ae8858dbf5009fe13edd60765dc1cd0281d90b905085ce180d8e05b39dbef308324c77cace1e05d79487c1f63d9a48715c6829af47251af67cf1a833bf728c54d44c723eb10edd675c3512423f0e7fe5870f40e6fa2caad51de179362b2f06ff2f063b05c8f0cdfa94fcf1d4fcfdf0839180da8096dea7e9ad3b0a53b9f93ca93104c15682a331a", 0xf2}, {&(0x7f0000000b40)="10fb8849b852cbdb058b4700e62a356a2aac626ee797032ec76b3d05", 0x1c}], 0x2d, &(0x7f0000000c00)=[{0xb0, 0xfe, 0x2, "766afc290807face1ef9b52cebdd61880d50b471cc7e46ffb4fceddf3829fd30e94638658f44cfc61f91474cf8b89d93817a4f1fe769c95a930136bd6c32081dae2af40b4baefeeb230b510bf1f84e2541e0bf4f3e8ac724565a85086aa0bcdfc7828353fd4d57e46714f9452d91b9719e15fed46efbe8bee3dc613353919da62ec20a96ae7cf4cb42dd7bf54c1280a19babcf8aecd21781f831d1350a3ed43a35feba4a"}, {0xfc, 0x108, 0x2, "0a8f8d5b643bc93ee88d9da48205e963011275183e99cd2005a0ab38a2a5af7c52e440a5a99f5ff6857f0c0fda14270326843b36f62974d1b2ff69eb322c339fa4c2d4635bde7b30d896f6eb78eba730b83fbd98ebed022bda97adad9e7b4c45692ee851b1fa3c722d2299f438c6be47393b5aeefb587838e4f7c271494186e68df4f8dcb5783b432f07fb1fedb86bef6611c0a5b88126ea7a9362608346c9406ddc8e14982e6fecdc19899de4f947801c76089f0c345534d54b42ee27dd6aec3f68a8fa898670e693aede5fcbc89c4ee6513006cba8add16d25e72c85e44fc457942d28e622eccbe2f630e00fc4"}, {0x4c, 0x10d, 0x5b, "3d5a9bca8d149e4cf3821ab8e6b6873c6f3bc1b511ba07f07748091bafe69b06e76aee019d3a88dba26167f3f44375cf519380142248a9a3fdf6d86c98f834f3"}, {0x10, 0x6, 0x9123, "541f64"}, {0xcc, 0x10a, 0x7fff, "3e60482a826a88d6dc80d34c41690f5c917e971284cbca928e3e1d223df0198a233ec6a2eea182ada3e8158add8647bab7cb807417176bf34baf6113b0ac3f4a43d79e63b159e7edccaca1413ce0dd33e5e4468a3ea13669bafa123fc9d0d6a9092ac7bd11d8b39c33894730cd6006671d28afe15f19cb3facb24025acc4803ae268cb7f25b311772b00271ee9f11757e206be223431d0eab7050182ec01bcce5ad9ee203bf35865feff796cdcb8421b07960fc39158e922717cb34538b0ab"}, {0x60, 0x3a, 0xcc0, "ab9c9bb856145e117e186af5687d665697ae7a7395df209fdc7f532ba440db7533001740d22d33ae28b4d8be6500d84c509d9029b391af83a03a796f589d9a68ccb4e425d2b47986c4508a8d7687b975f2"}], 0x334}, 0x80) r7 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r7, 0x0) preadv(r7, &(0x7f0000000280), 0x18, 0xd9f, 0x0) openat(r7, &(0x7f0000000500)='./file0\x00', 0x101000, 0x0) 17:48:55 executing program 2: r0 = clone3(&(0x7f00000012c0)={0x0, 0x0, 0x0, 0x0, {}, 0x0, 0x0, 0x0, 0x0}, 0x58) r1 = openat$6lowpan_control(0xffffff9c, &(0x7f0000000000), 0x2, 0x0) r2 = syz_mount_image$btrfs(&(0x7f0000000040), &(0x7f0000000080)='./file0\x00', 0x559fb9c, 0x2, &(0x7f0000000140)=[{&(0x7f00000000c0)="63d9c3220f0ea3b25eb8d914d91a78fe0bd3879e793ccc1596321415afc91a4732e05bf19a48cc913a680d4323d6d511323a98cdcbb3af54b62ad870955edf23dca7a8406ff37006901d1a9ab4e65338f8256a134816", 0x56, 0x9a}, {&(0x7f0000000440)="d519760a52adaebd989b2db4a934bbff50a3448f7231e7735976abd1d85f52a6062f50737303183b2ba8ba87dde0225c13a3e4075629b8c0c8ae2fc76031c7c13969282c9b", 0x45, 0xfffffffa}], 0x2850042, &(0x7f00000004c0)={[{@fragment_all}], [{@euid_lt={'euid<', 0xee00}}, {@defcontext={'defcontext', 0x3d, 'sysadm_u'}}, {@seclabel}, {@dont_appraise}, {@euid_eq={'euid', 0x3d, 0xee00}}, {@uid_gt={'uid>', 0xee01}}, {@smackfsfloor={'smackfsfloor', 0x3d, '\xee'}}]}) r3 = socket$bt_cmtp(0x1f, 0x3, 0x5) r4 = syz_open_dev$ttys(0xc, 0x2, 0x1) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = socket$nl_generic(0x10, 0x3, 0x10) r7 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r5, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r6, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r7, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r8, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) ppoll(&(0x7f0000000580)=[{0xffffffffffffffff, 0xa}, {r1, 0x200}, {r2, 0x220}, {r3, 0xb8}, {r4, 0x400}, {0xffffffffffffffff, 0x80}, {0xffffffffffffffff, 0x8009}, {r6, 0x440}], 0x8, &(0x7f00000005c0)={0x77359400}, &(0x7f0000000600)={[0x4, 0x6]}, 0x8) clone3(&(0x7f00000003c0)={0x42080000, &(0x7f00000001c0), &(0x7f0000000200), &(0x7f0000000240), {0xc}, &(0x7f0000000280)=""/81, 0x51, &(0x7f0000000300)=""/119, &(0x7f0000000380)=[r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0], 0x4}, 0x58) fork() seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x8, &(0x7f0000000dc0)={0x2, &(0x7f0000000180)=[{0x5, 0x7, 0x7f, 0x3}, {0x4, 0x6, 0x3f, 0xa}]}) 17:48:55 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) socket$nl_generic(0x10, 0x3, 0x10) r6 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r6, 0x8933, &(0x7f0000000140)={'wlan0\x00'}) syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) [ 268.183674][ T9491] loop0: detected capacity change from 0 to 8 [ 268.221417][ T9491] Can't find a SQUASHFS superblock on loop0 [ 268.527663][ T9499] loop2: detected capacity change from 0 to 264192 17:48:56 executing program 0: syz_usb_connect(0x0, 0x24, &(0x7f0000000100)=ANY=[@ANYBLOB="12010000016195086d049608428e000000010902120001000000000904"], 0x0) r0 = syz_usb_connect(0x5, 0x440, &(0x7f0000000140)={{0x12, 0x1, 0x300, 0x39, 0x64, 0x25, 0x20, 0x12d1, 0x8c2e, 0x3639, 0x1, 0x2, 0x3, 0x1, [{{0x9, 0x2, 0x42e, 0x2, 0x3f, 0x6, 0x10, 0x4, [{{0x9, 0x4, 0x39, 0x5, 0x5, 0xff, 0x4, 0x36, 0x0, [@hid_hid={0x9, 0x21, 0x80, 0x9e, 0x1, {0x22, 0x921}}, @uac_control={{0xa, 0x24, 0x1, 0x9, 0x2}, [@processing_unit={0x7, 0x24, 0x7, 0x5, 0x4, 0x1}, @processing_unit={0xa, 0x24, 0x7, 0x2, 0x0, 0x6, "f03e2c"}, @mixer_unit={0x6, 0x24, 0x4, 0x4, 0xb5, '$'}, @output_terminal={0x9, 0x24, 0x3, 0x6, 0x1fa, 0x2, 0x1, 0x4}]}], [{{0x9, 0x5, 0x80, 0x8, 0x10, 0x5, 0x8, 0x7c, [@generic={0x7e, 0x31, "b0c4476cbaecf4c63297d4662befa9ffd038a006261c79c040f554268f424fcb172cf5857959485470f5bce94df2aee04cc39d805a35a8fbfeff72613d7038d53545a5e3b70196a4a31f96193b66c837b556180b2c8cc3ea3e7096ad508e41b1ea055d98170dbfb65fffba618c54f824a108ec3b382d7c67bc225b07"}, @generic={0xbe, 0x23, "8194cbaf823c7969b243fc9cd6f495b8b8b2e3ecc1c620bd79dc3f79e2dcb6d55970692b7784cc6c7550318e90ab595ddae5575da1e64d4f216d3b36b7eda458d1a2cc367cc48a7c1857db802dbbb5bf85a560cb019fc603ef42c79d9c292fd2264b708e50923e4626e4058cf77df8a92e3e9c51c5e30f8794202be56134b8856a7f81c5a1307a4f215b6ca2d9dcc78054be038904a00a9abc91b6f948bef1c1f67bb4af0c87da09503ba5beb3aee37ff394e0c7b815409a4ae67210"}]}}, {{0x9, 0x5, 0x14, 0x1, 0x200, 0x0, 0x8, 0x1f}}, {{0x9, 0x5, 0x9, 0x8, 0x400, 0x5, 0x1f, 0x10}}, {{0x9, 0x5, 0x9, 0x8, 0x400, 0x8b, 0x9, 0x20, [@uac_iso={0x7, 0x25, 0x1, 0x2, 0x9, 0x3}]}}, {{0x9, 0x5, 0x9, 0x0, 0x8, 0xb7, 0xc1, 0x1, [@generic={0x2a, 0xf, "3552dce898604b47fffd4ed2ce0aed4432db88546eb3fbfe80329a5ddb90cdd1c23cafbb9de1f490"}]}}]}}, {{0x9, 0x4, 0x73, 0x20, 0x7, 0xff, 0x37, 0xbf, 0x8, [], [{{0x9, 0x5, 0x5, 0x0, 0x8, 0x1, 0x5, 0x0, [@uac_iso={0x7, 0x25, 0x1, 0x3, 0x9, 0x7}, @uac_iso={0x7, 0x25, 0x1, 0x3, 0x80, 0x9}]}}, {{0x9, 0x5, 0xa, 0x10, 0x0, 0x5, 0x0, 0x20}}, {{0x9, 0x5, 0xc, 0x8, 0x20, 0x1, 0x0, 0xf2}}, {{0x9, 0x5, 0xe, 0x0, 0x40, 0x7f, 0x6, 0x7a, [@generic={0xdf, 0x21, "909775b13f3832c7bd463ffef379c46dda60241f9bdccd2bcc8425aecad81380f2a791676eb7a6730b020d65348b792e65bd32d7e5d5196202128f449cd3436886c39f271f9c4e752b2dd83ef9147713b0ea3d3aedb33488095645c1bad60148af1685f7101e02f14a2234e78039672f53a44bdcc173af8c1e1c08367a99f69d2d7f11205d3febbe3a4e29b0c3f849ba85d132a68d1d9048e85cae69ec9e6aa52bd2ccaba331b6379562b196d079c377dfdd98d1b68e9e89169d808c2f7403d09f9e87d7d28f8ebda80c1cc85f3cb11aaa44ec568ec7b0864ac1c66dc8"}, @uac_iso={0x7, 0x25, 0x1, 0x82, 0x0, 0xe9}]}}, {{0x9, 0x5, 0x4, 0x0, 0x20, 0x3, 0x0, 0x0, [@uac_iso={0x7, 0x25, 0x1, 0x81, 0x4, 0x927}, @generic={0xba, 0x2a, "515fb4f61fed9b5f47d8e4750bb79d863161723408d10a4c58ae51741898e951ac4426e86e67fd0a55c02a11d0bb075e1e2b59bffb7dcc4e8e70ac9a1d807b27223756bf05aed2385ca3cd60da9eb8a90c0fd8651c05854c67008a71b1eda9b1ad9fba38ce5b4a20d3da8756946e5649ba713d7887f5bedbf0a646cb8449c7472cb7fe40ac330f5b749620ef688fbcb830a33a7197ecc617e1fd3c5f30c623cac5eea4913278e8eaef5c01e043b8549868e64fae216d5b76"}]}}, {{0x9, 0x5, 0x5, 0x0, 0x82a2494c7b554221, 0x8, 0x40, 0x81, [@generic={0x4c, 0x2, "3b6561763962d16c976c8d135d8cd8f0d34d88146df3b8168195d50f10807f68416684df89c7ef48ae7be03356fcf8c89232d60ed34c56661811021530e6ef9c1bfee083bda6e4e92f34"}]}}, {{0x9, 0x5, 0xe, 0x10, 0x3ff, 0x5, 0x2, 0x6, [@uac_iso={0x7, 0x25, 0x1, 0x2, 0x6, 0x7f}]}}]}}]}}]}}, &(0x7f0000000680)={0xa, &(0x7f0000000000)={0xa, 0x6, 0x110, 0x86, 0xc2, 0x4, 0x8, 0x7}, 0x65, &(0x7f0000000040)={0x5, 0xf, 0x65, 0x3, [@generic={0xe, 0x10, 0x3, "bdccc39468c93876d93227"}, @ss_cap={0xa, 0x10, 0x3, 0x0, 0xf, 0x1, 0x5, 0xfff}, @generic={0x48, 0x10, 0x1, "2e3487d1d5e4e15042fe170d0bc51c6f7bddc3adcb94808aaf5ef06faecc0f9992b67bd42b133a2988f2ea82ca534086dbda640ef4f034e16fee34f6a83e2e07d1c5466215"}]}, 0x2, [{0xd7, &(0x7f0000000580)=@string={0xd7, 0x3, "4a56da911939ad73614c03fb797c0ec286db2237b028a9ce337e445a1211128e7fdaf59ee9d9c90fde2af2c918d75d831aa9068d63ddd9268d84534a67e113e557e89ba7b619596a35a1f58dcad1c05a7e0780b8d9ee07f3bd7389804f245852c09881244a376db7d546a5337e422a39b50631770761dcc28322363c4dc13afa74d2c5825d95958098e040b62a83c3ff05905a30d03bda4c3ebc8a018f36dfe1fa65c81a5828150984d30e7a1db4dc492d5eedbd40802f3b293fb2ae44380b298c16440d2cccc3a2dd1a8f551ec8c9f3d6e8fc6c62"}}, {0x4, &(0x7f00000000c0)=@lang_id={0x4, 0x3, 0x422}}]}) syz_usb_ep_write$ath9k_ep1(r0, 0x82, 0x2d8, &(0x7f00000006c0)={[{0x91, 0x4e00, "00cb23622f88fb45378d5cb6759b1fdeb19aac517ce60ca087d8baded872a1661de0989b30e8157e9bfa7d1fea66d5ebdfc09a83a231444852aa414fa8d41c44cc1e95d7555a464643e4912ecb706469deefc133f076152e705463559a846ec9102d06926653b127afa1f146027d63a9ba66f81b261f5bc0ef152abd7d12803c3bb25d7cb1a2803ac9cc46d5d7b53d6a54"}, {0xc9, 0x4e00, "6714e6526c9858044b1868715f01dc1b1abdcf8734939f3ba0c8b3a89cda364af5a2abc602196e6a2b66a9f28855e55fda480e3d65855f57b93bf35b181b46cb8a7b5860d47d56df1c9d855f9522f514db816a1900c521668b7ad7afd4994e49c8d2f15d45c467ec531da1020bbf960c9d292efd948f532e6e25b2f289fe7756ec9d9b532448a2d2aa76b84331646e4fbacecb6799a59662b91ba7b397d74f850dca656fe6547fdbce61e87ee2f7a5dc09ff7ff4f214e62acbfe06c58cf3982d2e6a0cd51b72561eba"}, {0xbd, 0x4e00, "5ae634322f480fcbda2323608945c488b865714f5c0e642b9a133ce83ca9fb8001ad0095f71255d493bd0df210a4398bd507175dea0ea55b70b4b80e2658e7ea44bd444a73b341ddf531968b211c2275ec8b0808697ef797f615b9e7e9a281db99ff8476dd000efc16fca30efb35fc2703708fd69e38c94f02fbd80ee0a7dd93461cb19c6b16c1e810351b22895e5fc8be149b536c1b3c5e2d9d23fc5eb44db5d124a75ed1a75d6872f625051e16d7e0a1089b19c7ddd8047b3c511a55"}, {0xa5, 0x4e00, "0493edefc691ae15b2a4d8f8571def5f5201708f512c8f3bfd0690d95844a7f226d040ad1c5db1d98d074c01e4d5fa962bdb55cbf3123e43ffa77ee70c32aa965a98c55716fb5db765520da8cf0d9455d69c0b81e083ac2e1b6b62fcdd3f62b765efd64509eb8df679aa350eb907260fd06ce16d9a199943991de5674e41b87856cfa225ac353f68eba1b4984a3df2c94b5323ac057e6429560c6686fae0bba0903efdb90e"}]}) 17:48:56 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) socket$nl_generic(0x10, 0x3, 0x10) r6 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r6, 0x8933, &(0x7f0000000140)={'wlan0\x00'}) [ 268.758659][ T9502] IPVS: ftp: loaded support on port[0] = 21 [ 269.315799][ T7] usb 1-1: new high-speed USB device number 14 using dummy_hcd 17:48:57 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) socket$nl_generic(0x10, 0x3, 0x10) socket$nl_generic(0x10, 0x3, 0x10) [ 269.387671][ T9502] loop2: detected capacity change from 0 to 264192 [ 269.452445][ T9502] netlink: 8 bytes leftover after parsing attributes in process `syz-executor.2'. [ 269.582912][ T7] usb 1-1: Using ep0 maxpacket: 8 17:48:57 executing program 2: clone3(&(0x7f0000001280)={0x10002000, &(0x7f0000000000), &(0x7f0000000040), &(0x7f0000000080)=0x0, {0x23}, &(0x7f0000000180)=""/153, 0x99, &(0x7f00000000c0)=""/61, &(0x7f0000000240)=[0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x0, 0x0], 0x9}, 0x58) r1 = syz_open_procfs(r0, &(0x7f0000000100)='loginuid\x00') exit(0x0) preadv(r1, &(0x7f0000000280)=[{&(0x7f0000001300)=""/4091, 0xffb}], 0x1, 0x3ff, 0x8) [ 269.705572][ T7] usb 1-1: New USB device found, idVendor=046d, idProduct=0896, bcdDevice=8e.42 [ 269.715159][ T7] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 269.832456][ T7] usb 1-1: config 0 descriptor?? [ 269.879629][ T7] gspca_main: vc032x-2.14.0 probing 046d:0896 17:48:57 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) socket$nl_generic(0x10, 0x3, 0x10) [ 270.078082][ T9528] udc-core: couldn't find an available UDC or it's busy [ 270.085333][ T9528] misc raw-gadget: fail, usb_gadget_probe_driver returned -16 [ 270.162609][ T7] gspca_vc032x: reg_r err -71 [ 270.167730][ T7] vc032x: probe of 1-1:0.0 failed with error -71 [ 270.209793][ T7] usb 1-1: USB disconnect, device number 14 17:48:58 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:48:58 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) socket$nl_generic(0x10, 0x3, 0x10) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 270.932585][ T8833] usb 1-1: new high-speed USB device number 15 using dummy_hcd [ 271.183032][ T8833] usb 1-1: Using ep0 maxpacket: 8 17:48:59 executing program 2: perf_event_open(&(0x7f0000000240)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8001, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x5, 0x4}, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4}, 0x0, 0x0, 0xffffffffffffffff, 0x0) clone(0x70224100, 0x0, 0x0, 0x0, 0x0) ioprio_set$pid(0x3, 0x0, 0x0) r0 = syz_open_procfs(0x0, 0x0) add_key$user(0x0, 0x0, 0x0, 0x0, 0xfffffffffffffffd) openat$tcp_mem(0xffffff9c, &(0x7f0000000080)='/proc/sys/net/ipv4/tcp_rmem\x00', 0x1, 0x0) ioctl$FICLONERANGE(0xffffffffffffffff, 0x4020940d, 0x0) ioctl$UFFDIO_WAKE(r0, 0x8010aa02, 0x0) clone3(&(0x7f0000000680)={0x0, 0x0, &(0x7f0000000180), 0x0, {}, 0x0, 0x0, 0x0, 0x0}, 0x58) fork() syz_usb_connect$printer(0x0, 0x0, 0x0, 0x0) r1 = socket$nl_netfilter(0x10, 0x3, 0xc) writev(r1, &(0x7f0000000140), 0x0) write$binfmt_elf64(0xffffffffffffffff, &(0x7f0000000700)={{0x7f, 0x45, 0x4c, 0x46, 0x4, 0x2, 0x57, 0x7f, 0x0, 0x3, 0x3, 0x0, 0x0, 0x40, 0x0, 0x0, 0x3f, 0x38, 0x0, 0x0, 0x0, 0x8}, [{0x70000000, 0xa400, 0x0, 0x9900000000000000, 0x3, 0x5fa1, 0x0, 0x5}], "", ['\x00', '\x00', '\x00']}, 0x378) [ 271.303710][ T8833] usb 1-1: New USB device found, idVendor=046d, idProduct=0896, bcdDevice=8e.42 [ 271.313233][ T8833] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 271.374417][ T8833] usb 1-1: config 0 descriptor?? 17:48:59 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) socket$nl_generic(0x10, 0x3, 0x10) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 271.419101][ T8833] gspca_main: vc032x-2.14.0 probing 046d:0896 [ 271.568881][ T9570] IPVS: ftp: loaded support on port[0] = 21 [ 271.617488][ T9528] udc-core: couldn't find an available UDC or it's busy [ 271.624747][ T9528] misc raw-gadget: fail, usb_gadget_probe_driver returned -16 [ 271.662768][ T8833] gspca_vc032x: reg_r err -71 [ 271.667741][ T8833] vc032x: probe of 1-1:0.0 failed with error -71 [ 271.804547][ T8833] usb 1-1: USB disconnect, device number 15 17:48:59 executing program 0: sched_setaffinity(0x0, 0x8, &(0x7f0000000100)=0xbaa) r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x8040, 0x0) r1 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) fsetxattr$trusted_overlay_opaque(r0, &(0x7f0000000080), &(0x7f00000000c0), 0x2, 0x3) r2 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = socket$nl_generic(0x10, 0x3, 0x10) r5 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r3, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r4, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="ec4b0002", @ANYRES16=r5, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r6, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) socket$nl_generic(0x10, 0x3, 0x10) r7 = socket$nl_generic(0x10, 0x3, 0x10) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x800000, &(0x7f0000000300)=ANY=[@ANYBLOB="419336d2157b575c89e4963dad0398f80b8a9aaf7a79834c9907007ad09b527795b411f85f975a096bfdc726cb17b6f2655ffeb5ea88690f8db3638649a31819388c31cb921a40bf3de2c33a53db9f4b3e06140bb704f4b023328755dc4d8d2f037a30c70f3fa44459f5b04c16", @ANYRESDEC, @ANYRESHEX=r7, @ANYRESOCT=r6, @ANYRESHEX=r1]) setxattr$trusted_overlay_opaque(&(0x7f00000001c0)='./file0\x00', &(0x7f0000000280), 0x0, 0x0, 0x0) r8 = syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$LOOP_SET_FD(0xffffffffffffffff, 0x4c00, r8) truncate(&(0x7f0000000200)='./file0/file0\x00', 0x0) chdir(&(0x7f0000000040)='./file0\x00') umount2(&(0x7f00000002c0)='./file0\x00', 0x3) 17:48:59 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) socket$nl_generic(0x10, 0x3, 0x10) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 272.221659][ T9607] fuse: Unknown parameter 'A“6Ò{W\‰ä–' [ 272.278326][ T9607] fuse: Unknown parameter 'A“6Ò{W\‰ä–' 17:49:00 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r4 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r4, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = socket$nl_generic(0x10, 0x3, 0x10) r7 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) syz_genetlink_get_family_id$nl80211(&(0x7f0000000040), r1) ioctl$ifreq_SIOCGIFINDEX_wireguard(r5, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r8 = socket$nl_generic(0x10, 0x3, 0x10) r9 = socket$nl_generic(0x10, 0x3, 0x10) r10 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r8, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r9, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r10, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r11, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(0xffffffffffffffff, 0x8933, &(0x7f0000000080)) sendmsg$WG_CMD_SET_DEVICE(r6, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000000)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r7, @ANYRESOCT, @ANYRES32=r6, @ANYRES16=r11], 0x1a0}}, 0x0) syz_usb_connect$uac1(0x4, 0x93, &(0x7f0000000600)=ANY=[@ANYBLOB="cdc1d8e824f649685e0924cdec5227fee76f05b86be06d29241b486bdf62b14c00000000000000000000000000000000a608da0f79d2702b31771057dc4d5498cd6ae84b9e8ed1ec1b04f1816c06824e8673a77edfafc57b1bf417e8d101116079bbe7ab8bfd6441740c3502458ba08676312a72af2b1b2e7a0f44d3a032c5b4b9d0c2ee36cf02d5e4dface1a2ec4733ba548af3eba98de9081007788e4f0c03d0bdf23f1d067edab4109c0500000000000000cee44d2be316c0c456cbcd75691c1b116c644fed2650883b66c2cfe4c204ded62ad44bb2e8399c89ebc66c45708836d068e2f1c844b44801024732db3087598b88b0e115b1730e201e2e5c722a245930669a4a3829c6f014303f6a419435b67a792abf0643e07a5aea29598878b47b89ab2b66a79930316a83d25005fe21000000000000000648f046a57a0e3b1520cff7670d93fc7627fb763339c363f961b9dccf3dcc881527ed90310b9ebf8aa94ad31f8adbca51b59b122886f5f44cc12b34291fa1008103ff491f03a954cafb514c98f39de2e182275d7a36ba2fd4d37a6b7e7cbb68dec895c99bcceac5fc14b93056f857371d9c8b257198496b9b21fc7b5d501cee269fbf185c39b514459aaa9f01b69dcf87af8688a13c6f10b5f74880be6602bab00f408aa8d947e4c5641262c429069180ebbd2fad8d13a4fac054fe4c19f30c2076a1c027a5deaf16d5035da54c3dc8cc9577e531a4c9a18b9f50fcd67b6f6dd815d2f089cbebd7a810b252a708254674bbfda1b11e8024fdf77a310850de9226dca25487b77872452e36d8350f3909013cc855a1adf8ba8d38456d7e5f368cf5919671ad5cc8e556a71d7f2e09447b7f68aabf1bb1f9b9356273e1d35427d238b5ae04849010830f436ef3413246b7b81ae1f1df63cdd0352c44d40300000000000000a5d961bd827b85f449b7ebcb66868e0b07cc7bee6e67ca6c9f9d13c6162492662eb8c705133c21a643bb9b", @ANYBLOB="555a02b1a983c490130ca0f3a9264dd3ec17a5a210315248385dedc66cb5697fee201eaff9f5038966a394029c38d7bfab", @ANYRES32=r4, @ANYRESHEX=r1, @ANYRESDEC=r7, @ANYRESOCT, @ANYRESDEC=r7, @ANYRES64], 0x0) 17:49:00 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, 0x2800004, 0x12, r1, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x1000007, 0x800000000009031, 0xffffffffffffffff, 0x0) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) ioctl$KVM_S390_UCAS_UNMAP(r1, 0x4018ae51, &(0x7f0000000300)={0x0, 0x0, 0x9}) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f0000000200)={0x0, 0x0, &(0x7f0000000180)={0x0}, 0x1, 0x0, 0x0, 0x90}, 0x0) getsockname$packet(0xffffffffffffffff, &(0x7f0000000640)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000600)=0x14) r5 = socket$nl_crypto(0x10, 0x3, 0x15) sendmsg$nl_route(r2, &(0x7f0000000040)={&(0x7f0000000340)={0x10, 0x0, 0x0, 0x1}, 0xc, &(0x7f00000003c0)={&(0x7f0000000040)=ANY=[], 0x24}, 0x1, 0x0, 0x0, 0x40080c0}, 0x24000080) r6 = openat$vcs(0xffffff9c, &(0x7f0000000280), 0x2000, 0x0) ioctl$SNDCTL_DSP_GETBLKSIZE(r6, 0xc0045004, &(0x7f00000002c0)) vmsplice(r5, &(0x7f0000000240)=[{&(0x7f0000000080)="b7bd325fa17c7f762451a08e1b023ac417bccb40d04684bac6dd7628a427ff354347b48536b78aefca79b92ae747b4464ad163667ea1c2956573b8b864e16e7b0dcbf657f8e09b0d6212524cad1bf072bdc64f020fe2f7a10424e6dd68690ea33f43c401af151af4d89c387e67fa5f891375a8f3715fb5905996d2ba7caec29ffad769c2881ed4d15a3bbe6d9d0ec268a9c35a3f4a190da4d9bac42db3a556e33ab69b5b0d008f560d87265badfd6b58dfb6e65cd4b041fff9", 0xb9}, {&(0x7f0000000140)="a427d23cbff5462fc3e0879bb830c091dcb30c74a7e15c91605a3a4e22217a07b1ac2aa5b0c22bc57bed736f", 0x2c}], 0x2, 0x2) r7 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(0xffffffffffffffff, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r7, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r8, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) splice(r5, &(0x7f0000000380)=0xb3, 0xffffffffffffffff, &(0x7f0000000440)=0x80000000, 0x0, 0xa) sendmsg$nl_route(r2, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000500)=ANY=[@ANYBLOB="4800000010003b0e00"/20, @ANYRES32=0x0, @ANYBLOB="0105000000000000200812800e0001006970365672657461700000000c00028008000100", @ANYRES32=r4, @ANYBLOB="08001f0007000000"], 0x48}}, 0x0) 17:49:00 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:01 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:01 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:01 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r4 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r4, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = socket$nl_generic(0x10, 0x3, 0x10) r7 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) syz_genetlink_get_family_id$nl80211(&(0x7f0000000040), r1) ioctl$ifreq_SIOCGIFINDEX_wireguard(r5, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r8 = socket$nl_generic(0x10, 0x3, 0x10) r9 = socket$nl_generic(0x10, 0x3, 0x10) r10 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r8, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r9, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r10, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r11, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(0xffffffffffffffff, 0x8933, &(0x7f0000000080)) sendmsg$WG_CMD_SET_DEVICE(r6, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000000)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r7, @ANYRESOCT, @ANYRES32=r6, @ANYRES16=r11], 0x1a0}}, 0x0) syz_usb_connect$uac1(0x4, 0x93, &(0x7f0000000600)=ANY=[@ANYBLOB="cdc1d8e824f649685e0924cdec5227fee76f05b86be06d29241b486bdf62b14c00000000000000000000000000000000a608da0f79d2702b31771057dc4d5498cd6ae84b9e8ed1ec1b04f1816c06824e8673a77edfafc57b1bf417e8d101116079bbe7ab8bfd6441740c3502458ba08676312a72af2b1b2e7a0f44d3a032c5b4b9d0c2ee36cf02d5e4dface1a2ec4733ba548af3eba98de9081007788e4f0c03d0bdf23f1d067edab4109c0500000000000000cee44d2be316c0c456cbcd75691c1b116c644fed2650883b66c2cfe4c204ded62ad44bb2e8399c89ebc66c45708836d068e2f1c844b44801024732db3087598b88b0e115b1730e201e2e5c722a245930669a4a3829c6f014303f6a419435b67a792abf0643e07a5aea29598878b47b89ab2b66a79930316a83d25005fe21000000000000000648f046a57a0e3b1520cff7670d93fc7627fb763339c363f961b9dccf3dcc881527ed90310b9ebf8aa94ad31f8adbca51b59b122886f5f44cc12b34291fa1008103ff491f03a954cafb514c98f39de2e182275d7a36ba2fd4d37a6b7e7cbb68dec895c99bcceac5fc14b93056f857371d9c8b257198496b9b21fc7b5d501cee269fbf185c39b514459aaa9f01b69dcf87af8688a13c6f10b5f74880be6602bab00f408aa8d947e4c5641262c429069180ebbd2fad8d13a4fac054fe4c19f30c2076a1c027a5deaf16d5035da54c3dc8cc9577e531a4c9a18b9f50fcd67b6f6dd815d2f089cbebd7a810b252a708254674bbfda1b11e8024fdf77a310850de9226dca25487b77872452e36d8350f3909013cc855a1adf8ba8d38456d7e5f368cf5919671ad5cc8e556a71d7f2e09447b7f68aabf1bb1f9b9356273e1d35427d238b5ae04849010830f436ef3413246b7b81ae1f1df63cdd0352c44d40300000000000000a5d961bd827b85f449b7ebcb66868e0b07cc7bee6e67ca6c9f9d13c6162492662eb8c705133c21a643bb9b", @ANYBLOB="555a02b1a983c490130ca0f3a9264dd3ec17a5a210315248385dedc66cb5697fee201eaff9f5038966a394029c38d7bfab", @ANYRES32=r4, @ANYRESHEX=r1, @ANYRESDEC=r7, @ANYRESOCT, @ANYRESDEC=r7, @ANYRES64], 0x0) 17:49:01 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 274.136193][ T9619] netlink: 40 bytes leftover after parsing attributes in process `syz-executor.0'. 17:49:02 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:02 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) preadv(0xffffffffffffffff, &(0x7f0000000040)=[{&(0x7f0000000240)=""/201, 0xc9}], 0x1, 0x1, 0xc13e) r2 = socket$inet6_sctp(0xa, 0x5, 0x84) ioctl$EXT4_IOC_PRECACHE_EXTENTS(r2, 0x6612) ioctl$ifreq_SIOCGIFINDEX_wireguard(r1, 0x8933, &(0x7f0000000100)={'wg0\x00'}) bpf$OBJ_PIN_PROG(0x6, &(0x7f0000000140)={&(0x7f00000000c0)='./file0\x00', r0}, 0x10) preadv(r1, &(0x7f0000000040), 0x0, 0xd9f, 0x1) r3 = openat$rfkill(0xffffffffffffff9c, &(0x7f0000000200), 0x801, 0x0) write$rfkill(r3, &(0x7f0000000080)={0x0, 0x0, 0x3, 0x1}, 0x8) syz_mount_image$ext4(&(0x7f0000000180)='ext4\x00', &(0x7f00000001c0)='./file0\x00', 0x7, 0x4, &(0x7f00000004c0)=[{&(0x7f0000000340)="9abe5c01c1cc2d4a70c78eac828450ce54cc41dd786f238ffda3e6df4e4078110247a6a2f2fdc162a065928082d07f0f209be7aabcc8e1a11bc2b76da908154104e696beed5d", 0x46, 0x4}, {&(0x7f00000003c0)="dcbe2d77b5c9e2db906f766e8ad0135798848b05a65fb7859418a027ff6cf4d4aa6ac425", 0x24, 0x8}, {&(0x7f0000000400)="e11468c5fe129b1bcf72b361c0b20f62791f07c39a3d024db07f4e958ad4ae0239aafd2327580732564c107427f5614bc8dccf194cdd64d35a62f4db1a412251962e763364d1bb18b86d63e9807e93549e835302bc", 0x55, 0x7}, {&(0x7f0000000480), 0x0, 0xb3cb}], 0x2810060, &(0x7f0000000500)={[{@dioread_nolock}, {@abort}], [{@audit}]}) r4 = socket(0xa, 0x80000, 0x9763) sendmsg$DEVLINK_CMD_TRAP_SET(r4, &(0x7f0000000600)={&(0x7f0000000480)={0x10, 0x0, 0x0, 0x8000000}, 0xc, &(0x7f00000005c0)={&(0x7f0000000540)={0x58, 0x0, 0x2, 0x70bd2c, 0x1f, {}, [{@nsim={{0xe}, {0xf, 0x2, {'netdevsim', 0x0}}}, {0x1c}, {0x5, 0x83, 0x1}}]}, 0x58}, 0x1, 0x0, 0x0, 0x20000005}, 0x4) 17:49:02 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 275.182253][ T9654] loop2: detected capacity change from 0 to 179 17:49:03 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(0xffffffffffffffff, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:03 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(0xffffffffffffffff, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:04 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(0xffffffffffffffff, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:04 executing program 0: write$FUSE_INIT(0xffffffffffffffff, &(0x7f0000000380)={0x50, 0x0, 0x0, {0x7, 0x21, 0x4, 0x400000, 0x0, 0x1, 0x1, 0x9}}, 0x50) syz_mount_image$nilfs2(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010000)="020000000000343418010000e7306613de7b30c6020000001f0000000000000000008000000000000100000000000000400000000500000002000000000000000c0000000000000000000000000000004007000000000000571b675f00000000581b675f00000000581b675f000000000100320001000100571b675f00000000004eed0000000000000000000b00000080002000c0001000484e13ca21be4cdb92841b9f3a1938c2", 0xa8, 0x400}, {0x0}], 0x0, &(0x7f0000000040)={[], [{@audit}]}) getresuid(&(0x7f0000000280)=0x0, &(0x7f00000002c0), &(0x7f0000000300)) syz_mount_image$jfs(&(0x7f0000000080), &(0x7f00000000c0)='./file0\x00', 0xd02e, 0x1, &(0x7f0000000240)=[{&(0x7f0000000140)="7be4b95286d98ee6e94d547c3da19922828cb45340741b024f1744cc58fc100f102d102e898c1781d47e04881c713f17ea563dc14cdf4d9a2f1938b5393ba35c82da6e28cc070dbc30fa21993ecc462b4c76a5644a0c1f3f6d750b59c11d9797eab2b37a72538baca4c606e1687e069e0bbb1a015d3853c3e890ec15673324dc475d8eeedb23a61897fc1d5308a876df631ffb26aa5b9fc284a2e4809279b7d12f09e8aeb261d83f23319947119410a6b549d21a", 0xb4, 0x3}], 0x1000404, &(0x7f0000000340)={[{@grpquota}, {@usrquota}], [{@euid_gt={'euid>', r0}}]}) [ 276.890505][ T9678] loop0: detected capacity change from 0 to 4 [ 276.948595][ T9678] NILFS (loop0): unable to read secondary superblock (blocksize = 1024) [ 276.958018][ T9678] NILFS (loop0): broken superblock, retrying with spare superblock (blocksize = 1024) [ 276.967898][ T9678] NILFS (loop0): unrecognized mount option "audit" 17:49:05 executing program 0: r0 = socket(0x29, 0x5, 0x0) sendmmsg$unix(r0, &(0x7f0000005fc0), 0x1, 0x0) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) r2 = accept4$inet(r0, &(0x7f0000000340)={0x2, 0x0, @initdev}, &(0x7f0000000300)=0xa, 0x800) recvmsg(r2, &(0x7f0000000580)={&(0x7f0000000400)=@nfc, 0x80, &(0x7f0000000500)=[{&(0x7f00000007c0)=""/4096, 0x1000}, {&(0x7f0000000380)=""/21, 0x15}, {&(0x7f0000000480)=""/6, 0x6}, {&(0x7f0000002680)=""/4084, 0xff4}, {&(0x7f0000000140)=""/12, 0xc}], 0x5, &(0x7f0000000540)}, 0x40000000) unlinkat(0xffffffffffffffff, &(0x7f00000002c0)='./file0\x00', 0x200) getsockname$packet(r1, &(0x7f00000003c0)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @dev}, &(0x7f0000000000)=0x14) r4 = socket(0x10, 0x3, 0x0) sendmsg$nl_route_sched(r4, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000780)={&(0x7f00000005c0)=ANY=[@ANYBLOB="5000000024000b0f000000000000000000000e00", @ANYRES32=r3, @ANYBLOB="00000000ffff03ff000000000a0401006e6574656d00000000000040000000080000000000000000080004000300000000000000c84a4cc9409623e03f2948ee8e184d171d24017bfbf1232c0364c8f7a9d09e442cfcec363fe4298eb3f862818519632b778594a42fd478269932898f8cfe64048484ce0f738270753091236c344b066cfa3f7052cdb5dc83dfc9e575e21442d58f2edb62f82313ac9be491d93aa71424457ae0549c84fe7a2f21fac81d959c3f871c5b1b6816eac6f2c266267305e22714e7e5d748ccf48537a39a90dd458c4a75333204a22ce5f78ac975f7a344acce8745f6d4ac6e7e14ba883ac1aab57abd3d6f963d314d10df52ce5ebe059a8f164a44dbf3144686ecbd1df3eac8e4c9ba52f8ed472be42bca74b6c167ff9b4d05745ed35c5455b1fb676a3d35f3"], 0x50}}, 0x0) ioctl$sock_ipv6_tunnel_SIOCADDTUNNEL(r0, 0x89f1, &(0x7f0000000080)={'ip6tnl0\x00', &(0x7f0000000000)={'syztnl2\x00', r3, 0x29, 0x52, 0x9, 0x5800, 0x0, @dev={0xfe, 0x80, '\x00', 0x3e}, @local, 0x7, 0x8, 0x4, 0x1}}) r5 = openat$proc_capi20ncci(0xffffff9c, &(0x7f0000000180), 0x10040, 0x0) getsockname$packet(r5, &(0x7f00000001c0)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @dev}, &(0x7f0000000200)=0x14) r6 = openat$apparmor_thread_exec(0xffffff9c, &(0x7f0000000100), 0x2, 0x0) readv(r6, &(0x7f0000002640)=[{&(0x7f00000025c0)=""/3, 0x3}], 0x1) r7 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r7, 0x8933, &(0x7f0000000100)={'wg2\x00'}) r8 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r8, 0x8933, &(0x7f0000000100)={'wg0\x00'}) fstat(r8, &(0x7f0000000240)) 17:49:05 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) socket(0x10, 0x803, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r1, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:05 executing program 2: r0 = socket$netlink(0x10, 0x3, 0x0) sendmsg$nl_route_sched(r0, &(0x7f0000000080)={0x0, 0x7d020000, &(0x7f00000002c0)={&(0x7f0000000340)=ANY=[@ANYBLOB="60000000300001000000000000000000000000004c0001007429f4d8e0bf33399f2ae6dca60038000280180002220200ecbaf56400010000000000000000000000000c0cb71d6213164455000000000000220c000800"/108], 0x60}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f00000000c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x8000}, 0xc, &(0x7f0000000040)={&(0x7f0000000480)=ANY=[@ANYBLOB="940000003100020025bd7000fedbdf2500000000100001000c0005000800030018000000100001000c000600080003009bee00004c0001000c000800f3ff0200ff0100000c0013000800010069707400140000000d000100636f6e6e6d368f6061726b0000000010000b000b0001006d697272656400000c001a00080003000010000014000100100015000c000100736b626564f9fc07e630e52fe8c8a2334c6516e29c5ea91a885aeb31e0c6a33be8c34b4d5c47a91b1eefa687472d5dab80edd5c0575316d628a01505967f86af84de38e214357bec9cbf520dec9c012ebe175d8d50a11f35c0fae48a8a69892f0914b92e17309a4d9df2d8dd5535432ace6780f7062e106f1c30a4d4846dc422951c7f0f6d02894014e06f75d2b6ab549ce1fc38bd0de4000000003910bd"], 0x94}, 0x1, 0x0, 0x0, 0x4000000}, 0x2040810) getsockname$packet(0xffffffffffffffff, &(0x7f0000000280)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000300)=0x14) r1 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r1, 0x8933, &(0x7f0000000100)={'wg0\x00'}) setsockopt$SO_BINDTODEVICE(r1, 0x1, 0x19, &(0x7f0000000100)='wlan1\x00', 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000180), r1) sendmsg$NL80211_CMD_RELOAD_REGDB(r0, &(0x7f0000000440)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x20000}, 0xc, &(0x7f0000000400)={&(0x7f00000003c0)={0x14, r2, 0x200, 0x70bd2a, 0x25dfdbfd, {}, ["", "", "", "", "", "", ""]}, 0x14}, 0x1, 0x0, 0x0, 0x200000c0}, 0x20000010) [ 277.627986][ T9691] netlink: 44 bytes leftover after parsing attributes in process `syz-executor.0'. 17:49:05 executing program 0: ioctl$sock_ipv4_tunnel_SIOCDELTUNNEL(0xffffffffffffffff, 0x89f2, 0x0) r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) r2 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) openat(r2, &(0x7f0000000280)='./file0\x00', 0x840, 0x1c5) r3 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r3, &(0x7f0000000040)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000240)=0x14) sendmsg$nl_route(r1, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000380)=ANY=[@ANYBLOB="3c0000001000850600000000000084ffcf8a63ed", @ANYRES32=r4, @ANYBLOB="fe000000000000001c0012000c000100626f6e64000000000c0002000800010001"], 0x3c}}, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000003c0)=ANY=[@ANYBLOB="400000001000010400"/20, @ANYRES32=0x0, @ANYBLOB="000000000000000018010000000000003ef12ece0069726567756172640000000400028008000a29", @ANYRES32=r4, @ANYBLOB], 0x40}}, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x13, r0, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) sendmsg$nl_route(r1, &(0x7f0000000200)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x40000000}, 0xc, &(0x7f0000000100)={&(0x7f0000000300)=@newnexthop={0x6c, 0x68, 0x10, 0x70bd2c, 0x25dfdbff, {0x0, 0x0, 0x3, 0x0, 0x15}, [@NHA_GROUP={0x44, 0x2, [{0x2, 0x92}, {0x0, 0x7}, {0x0, 0x7f}, {0x2}, {0x2, 0x7e}, {0x0, 0x32}, {0x1, 0x1}, {0x1, 0x1c}]}, @NHA_ENCAP_TYPE={0x6, 0x7, 0x3}, @NHA_ENCAP_TYPE={0x6, 0x7, 0x8}]}, 0x6c}, 0x1, 0x0, 0x0, 0x8010}, 0x4000800) [ 277.878102][ T9699] netlink: 72 bytes leftover after parsing attributes in process `syz-executor.2'. 17:49:05 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) socket$nl_route(0x10, 0x3, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r1, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 277.954200][ T9699] netlink: 72 bytes leftover after parsing attributes in process `syz-executor.2'. 17:49:06 executing program 2: socket$key(0xf, 0x3, 0x2) sendmsg$key(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={0x0}}, 0x0) socket$inet_icmp(0x2, 0x2, 0x1) setsockopt$inet6_opts(0xffffffffffffffff, 0x29, 0x37, &(0x7f0000000040)=@fragment={0x87, 0x0, 0x1, 0x0, 0x0, 0x0, 0x64}, 0x8) r0 = bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000200)={0x18, 0x3, &(0x7f0000000280)=ANY=[@ANYBLOB="1800000000000000000000000000000095000000000000004a53a59201591a6721677962198ff711abcfec9cbcaedbc1766c7fd399e7096c919ecc600cb670c3a724b29174883708e15c8e6e4293f9680652ba0ea48fe8ab758c3b03b1b30a268813d97e6c5ac54fccae018418a2c9a8ef0b6c519885901df31370c1ad105bda2e72e00828e5a60b533534a7372d194fcb476029e4da85e5b7b32d5d90b56d683c8930c44fbe"], &(0x7f0000000000)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x2, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x78) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f00000000c0)={&(0x7f0000000080)='sched_switch\x00', r0}, 0x10) r1 = syz_init_net_socket$llc(0x1a, 0x1, 0x0) connect$llc(r1, &(0x7f0000000180)={0x1a, 0x0, 0x0, 0x8, 0x0, 0x0, @dev}, 0x10) sendmmsg(r1, &(0x7f0000001380), 0x3fffffffffffeed, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = socket$nl_generic(0x10, 0x3, 0x10) r5 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r3, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r4, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r5, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r6, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) ioctl$F2FS_IOC_GET_COMPRESS_BLOCKS(r4, 0x8008f511, &(0x7f0000000100)) [ 278.177681][ T9704] netlink: 'syz-executor.0': attribute type 1 has an invalid length. [ 278.339736][ T9728] netlink: 32 bytes leftover after parsing attributes in process `syz-executor.0'. 17:49:06 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket(0x10, 0x80002, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000000)) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r1, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:06 executing program 0: r0 = socket$inet_udplite(0x2, 0x2, 0x88) sendmmsg$inet(r0, &(0x7f0000001b80)=[{{&(0x7f00000000c0)={0x2, 0x4e20, @remote}, 0x10, 0x0, 0x0, &(0x7f0000000000)=[@ip_retopts={{0x28, 0x0, 0x7, {[@noop, @timestamp_addr={0x44, 0x14, 0xd, 0x1, 0x0, [{@local}, {}]}]}}}], 0x28}}, {{&(0x7f0000000400)={0x2, 0x0, @loopback}, 0x10, 0x0}}], 0x2, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r1, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r5 = syz_genetlink_get_family_id$l2tp(&(0x7f0000000080), 0xffffffffffffffff) sendmsg$L2TP_CMD_NOOP(r2, &(0x7f0000000180)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000140)={&(0x7f0000000100)={0x38, r5, 0x400, 0x70bd26, 0x25dfdbfe, {}, [@L2TP_ATTR_COOKIE={0xc, 0xf, 0xc0000000000000}, @L2TP_ATTR_MTU={0x6, 0x1c, 0xfffd}, @L2TP_ATTR_DEBUG={0x8, 0x11, 0x3}, @L2TP_ATTR_PROTO_VERSION={0x5, 0x7, 0x3}]}, 0x38}, 0x1, 0x0, 0x0, 0x40040001}, 0x20000000) 17:49:06 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) socket(0x10, 0x80002, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:07 executing program 0: r0 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000200), 0x404040, 0x0) syz_open_dev$ttys(0xc, 0x2, 0x1) openat$proc_capi20ncci(0xffffff9c, &(0x7f0000000000), 0x80100, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x5) signalfd(0xffffffffffffffff, &(0x7f0000000040)={[0xffff, 0x7]}, 0x8) r1 = syz_open_dev$ptys(0xc, 0x3, 0x0) ioctl$TCGETA(r1, 0x5405, &(0x7f0000000240)) openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) ioctl$TCSETSF(0xffffffffffffffff, 0x5404, 0x0) r2 = socket$packet(0x11, 0x2, 0x300) ioctl$TIOCCBRK(r0, 0x5428) ioctl$sock_SIOCGIFINDEX(r2, 0x8933, &(0x7f0000000180)={'bond0\x00', 0x0}) bind$packet(0xffffffffffffffff, &(0x7f0000000100)={0x11, 0x0, r3, 0x1, 0x0, 0x6, @local}, 0x14) r4 = socket$nl_route(0x10, 0x3, 0x0) r5 = socket(0x1, 0x803, 0x0) getsockname$packet(r5, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r4, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000300)=@newlink={0x4c, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x1c, 0x12, 0x0, 0x1, @macvlan={{0xc}, {0xc, 0x2, 0x0, 0x1, [@IFLA_MACVLAN_FLAGS={0x6}]}}}, @IFLA_LINK={0x8, 0x5, r3}, @IFLA_MASTER={0x8, 0xa, r6}]}, 0x4c}}, 0x0) r7 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r7, 0x0) preadv(r7, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) 17:49:07 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 279.428146][ T9757] bond0: (slave macvlan2): Error -98 calling set_mac_address 17:49:07 executing program 3: sendmsg$IPCTNL_MSG_EXP_NEW(0xffffffffffffffff, &(0x7f0000000180)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000140)={&(0x7f0000000040)={0xd4, 0x0, 0x2, 0x401, 0x0, 0x0, {0x7, 0x0, 0x6}, [@CTA_EXPECT_TUPLE={0x58, 0x2, 0x0, 0x1, [@CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x4}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x2}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5, 0x1, 0x2f}}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5, 0x1, 0x21}}, @CTA_TUPLE_IP={0x14, 0x1, 0x0, 0x1, @ipv4={{0x8, 0x1, @broadcast}, {0x8, 0x2, @multicast1}}}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5, 0x1, 0x1}}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5, 0x1, 0x3a}}]}, @CTA_EXPECT_CLASS={0x8, 0x9, 0x1, 0x0, 0x5}, @CTA_EXPECT_MASTER={0x60, 0x1, 0x0, 0x1, [@CTA_TUPLE_IP={0x14, 0x1, 0x0, 0x1, @ipv4={{0x8, 0x1, @initdev={0xac, 0x1e, 0x1, 0x0}}, {0x8, 0x2, @empty}}}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x2}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5, 0x1, 0x6}}, @CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @rand_addr=' \x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02'}, {0x14, 0x4, @private2}}}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x2}]}]}, 0xd4}, 0x1, 0x0, 0x0, 0x20040080}, 0x0) getpeername$netlink(0xffffffffffffffff, &(0x7f00000001c0), &(0x7f0000000200)=0xc) getsockopt$sock_buf(0xffffffffffffffff, 0x1, 0x1c, &(0x7f0000000240)=""/47, &(0x7f0000000280)=0x2f) r0 = syz_genetlink_get_family_id$nl802154(&(0x7f0000000300), 0xffffffffffffffff) ioctl$sock_SIOCGIFINDEX_802154(0xffffffffffffffff, 0x8933, &(0x7f0000000340)={'wpan0\x00', 0x0}) sendmsg$NL802154_CMD_NEW_SEC_DEV(0xffffffffffffffff, &(0x7f0000000440)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x400}, 0xc, &(0x7f0000000400)={&(0x7f0000000380)={0x68, r0, 0x2, 0x70bd27, 0x25dfdbff, {}, [@NL802154_ATTR_WPAN_DEV={0xc}, @NL802154_ATTR_WPAN_DEV={0xc, 0x6, 0x200000002}, @NL802154_ATTR_IFINDEX={0x8, 0x3, r1}, @NL802154_ATTR_IFINDEX={0x8}, @NL802154_ATTR_SEC_DEVICE={0x14, 0x23, 0x0, 0x1, [@NL802154_DEV_ATTR_FRAME_COUNTER={0x6, 0x1, 0x9}, @NL802154_DEV_ATTR_PAN_ID={0x6, 0x2, 0x2}]}, @NL802154_ATTR_SEC_DEVICE={0x4}, @NL802154_ATTR_IFINDEX={0x8}, @NL802154_ATTR_WPAN_DEV={0xc, 0x6, 0x100000001}]}, 0x68}, 0x1, 0x0, 0x0, 0x4811}, 0x1000) sendmsg$IPSET_CMD_SWAP(0xffffffffffffffff, &(0x7f0000000540)={&(0x7f0000000480)={0x10, 0x0, 0x0, 0x40000}, 0xc, &(0x7f0000000500)={&(0x7f00000004c0)={0x3c, 0x6, 0x6, 0x201, 0x0, 0x0, {0xc, 0x0, 0x1}, [@IPSET_ATTR_SETNAME={0x9, 0x2, 'syz2\x00'}, @IPSET_ATTR_PROTOCOL={0x5}, @IPSET_ATTR_PROTOCOL={0x5}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz1\x00'}]}, 0x3c}, 0x1, 0x0, 0x0, 0x74801}, 0x1) r2 = syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL802154_CMD_DEL_SEC_DEVKEY(r2, &(0x7f0000000740)={&(0x7f0000000580)={0x10, 0x0, 0x0, 0x400000}, 0xc, &(0x7f0000000700)={&(0x7f00000005c0)={0x124, r0, 0x100, 0x70bd26, 0x25dfdbfe, {}, [@NL802154_ATTR_SEC_DEVKEY={0x48, 0x24, 0x0, 0x1, [@NL802154_DEVKEY_ATTR_FRAME_COUNTER={0x8, 0x1, 0x40ba4e52}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc, 0x2, {0xaaaaaaaaaaaa0202}}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc, 0x2, {0xaaaaaaaaaaaa0202}}, @NL802154_DEVKEY_ATTR_FRAME_COUNTER={0x8, 0x1, 0x6}, @NL802154_DEVKEY_ATTR_ID={0x10, 0x3, 0x0, 0x1, [@NL802154_KEY_ID_ATTR_SOURCE_EXTENDED={0xc, 0x5, 0x5}]}]}, @NL802154_ATTR_WPAN_DEV={0xc, 0x6, 0x300000000}, @NL802154_ATTR_IFINDEX={0x8, 0x3, r1}, @NL802154_ATTR_SEC_DEVKEY={0xb4, 0x24, 0x0, 0x1, [@NL802154_DEVKEY_ATTR_ID={0x4c, 0x3, 0x0, 0x1, [@NL802154_KEY_ID_ATTR_MODE={0x8, 0x1, 0x2}, @NL802154_KEY_ID_ATTR_IMPLICIT={0x30, 0x3, 0x0, 0x1, [@NL802154_DEV_ADDR_ATTR_PAN_ID={0x6, 0x1, 0x3}, @NL802154_DEV_ADDR_ATTR_SHORT={0x6, 0x3, 0xfffe}, @NL802154_DEV_ADDR_ATTR_SHORT={0x6}, @NL802154_DEV_ADDR_ATTR_SHORT={0x6, 0x3, 0xaaa1}, @NL802154_DEV_ADDR_ATTR_EXTENDED={0xc, 0x4, {0xaaaaaaaaaaaa0202}}]}, @NL802154_KEY_ID_ATTR_SOURCE_SHORT={0x8, 0x4, 0x8}, @NL802154_KEY_ID_ATTR_INDEX={0x5, 0x2, 0x2}]}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc, 0x2, {0xaaaaaaaaaaaa0002}}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc, 0x2, {0xaaaaaaaaaaaa0202}}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc, 0x2, {0xaaaaaaaaaaaa0302}}, @NL802154_DEVKEY_ATTR_FRAME_COUNTER={0x8, 0x1, 0x80000000}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc, 0x2, {0xaaaaaaaaaaaa0002}}, @NL802154_DEVKEY_ATTR_FRAME_COUNTER={0x8, 0x1, 0x4}, @NL802154_DEVKEY_ATTR_EXTENDED_ADDR={0xc, 0x2, {0xaaaaaaaaaaaa0002}}]}]}, 0x124}, 0x1, 0x0, 0x0, 0x80}, 0x8080) r3 = syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$netlbl_unlabel(&(0x7f00000007c0), r2) sendmsg$NLBL_UNLABEL_C_STATICADD(r3, &(0x7f00000008c0)={&(0x7f0000000780)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000880)={&(0x7f0000000800)={0x44, r4, 0x20, 0x70bd29, 0x25dfdbff, {}, [@NLBL_UNLABEL_A_IFACE={0x14, 0x6, 'virt_wifi0\x00'}, @NLBL_UNLABEL_A_IPV6ADDR={0x14, 0x2, @dev={0xfe, 0x80, '\x00', 0x38}}, @NLBL_UNLABEL_A_ACPTFLG={0x5, 0x1, 0x1}]}, 0x44}, 0x1, 0x0, 0x0, 0x1}, 0x91) sendmsg$TIPC_CMD_GET_NETID(0xffffffffffffffff, &(0x7f00000009c0)={&(0x7f0000000900)={0x10, 0x0, 0x0, 0x8}, 0xc, &(0x7f0000000980)={&(0x7f0000000940)={0x1c, 0x0, 0x300, 0x70bd2c, 0x25dfdbfd, {}, ["", "", "", "", "", "", "", "", ""]}, 0x1c}, 0x1, 0x0, 0x0, 0x4040}, 0x24008040) sendmsg$nl_xfrm(0xffffffffffffffff, &(0x7f0000000dc0)={&(0x7f0000000a00)={0x10, 0x0, 0x0, 0x80}, 0xc, &(0x7f0000000d80)={&(0x7f0000000a40)=@getsadinfo={0x32c, 0x23, 0x800, 0x70bd2d, 0x25dfdbfb, 0x0, [@tfcpad={0x8, 0x16, 0xfff}, @coaddr={0x14, 0xe, @in=@empty}, @lifetime_val={0x24, 0x9, {0x5, 0xfff, 0xfffffffffffffff8, 0x4}}, @algo_aead={0xc0, 0x12, {{'aegis128-generic\x00'}, 0x3a0, 0x0, "7db81f36c320bdd208ed896f373f8c55fe730d9268a06e992c219b05ea91872a94426e153ebc61c1eb27c9b23fa42c8848cd257c2ff9f2ae82d5e2d2339d5803b037e43bc3974114115579a399700b0185be527287ca95b0efee493c00aca077339ee78152c4b14ed7b267b1578fb700f73a1d73"}}, @algo_crypt={0xb1, 0x2, {{'cryptd(xts(camellia))\x00'}, 0x348, "617d0481ec9ff3b4eb4599c0902edfece8a76800ce0e0c5a06171641f2d772da48cd35da244733e6d560a5046926d5c8ae7359f5517c6462f7026ec0eedfb6b87c2aaed7bba87fe53dca16546256a20afd6eddecb4df38d3c8f6f72a7df8d75f4bf80ae380e245519c"}}, @srcaddr={0x14, 0xd, @in6=@empty}, @replay_esn_val={0x28, 0x17, {0x3, 0x70bd29, 0x70bd29, 0x70bd26, 0x70bd26, 0x0, [0x1, 0x4, 0xffff]}}, @algo_comp={0x128, 0x3, {{'lzs\x00'}, 0x700, "8cd76219db43c692d1ef7997ecaf2bb08b49993449da2f25fe4e125a233b5217f537350f883aa1def55f52c9d93ba6788d3f1e439503de90358c94da8b6021c8654e660aedd7d7622a6651c074d267a61aa386ecfdb56a84735dde6273f9e0d34bc7183fc1b2b89b3d34cd6dc4f5bc335fae5a9b6a51f3e657448de71f36e34a3cbf8a9f29c142654955501a96ba68a09f11120f4bd5964f1da86b5763eb5fa10c1bdec0439d06580c4c72fb3b4f67c274980f694ce7537ce5a2f03c80409d9b85b06f3c33c7f8f06068a704c66b0bd3d15fcb1df28607f483ccc1e45efae49b"}}]}, 0x32c}, 0x1, 0x0, 0x0, 0x40004}, 0x8000) r5 = syz_genetlink_get_family_id$tipc(&(0x7f0000000e40), 0xffffffffffffffff) sendmsg$TIPC_CMD_GET_LINKS(0xffffffffffffffff, &(0x7f0000000f00)={&(0x7f0000000e00)={0x10, 0x0, 0x0, 0x8}, 0xc, &(0x7f0000000ec0)={&(0x7f0000000e80)={0x24, r5, 0x2, 0x70bd29, 0x25dfdbff, {{}, {}, {0x8}}, [""]}, 0x24}, 0x1, 0x0, 0x0, 0x40}, 0x4) setsockopt$SO_BINDTODEVICE(0xffffffffffffffff, 0x1, 0x19, &(0x7f0000000f40)='vxcan1\x00', 0x10) r6 = openat$dlm_control(0xffffff9c, &(0x7f0000000fc0), 0x10000, 0x0) sendmsg$NBD_CMD_STATUS(r3, &(0x7f00000010c0)={&(0x7f0000000f80)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000001080)={&(0x7f0000001000)={0x44, 0x0, 0x8, 0x70bd25, 0x25dfdbfb, {}, [@NBD_ATTR_CLIENT_FLAGS={0xc, 0x6, 0x1}, @NBD_ATTR_SOCKETS={0x24, 0x7, 0x0, 0x1, [{0x8}, {0x8, 0x1, r6}, {0x8}, {0x8}]}]}, 0x44}, 0x1, 0x0, 0x0, 0x40000}, 0x20044800) setsockopt$TIPC_IMPORTANCE(r6, 0x10f, 0x7f, &(0x7f0000001100)=0x3f, 0x4) 17:49:07 executing program 2: r0 = openat(0xffffffffffffffff, &(0x7f0000000440)='/proc/self/exe\x00', 0x0, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r2 = openat$ptmx(0xffffff9c, &(0x7f0000000080), 0x0, 0x0) mmap(&(0x7f00004dd000/0x1000)=nil, 0x1000, 0x1000005, 0x50, r2, 0x172a0000) fchmodat(r1, &(0x7f00000000c0)='./file0\x00', 0x102) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) preadv(r1, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000100)={0x1, &(0x7f0000000040)=[{0x6, 0x0, 0x0, 0x7fff7ffe}]}) memfd_create(&(0x7f0000000040)='+\x8b\x8a\x16\x11O\xdd\xdfk(F\x99\xdf\x92\xd5>\x9b\xafI\xac', 0x0) 17:49:07 executing program 0: ioctl$SG_SET_TIMEOUT(0xffffffffffffffff, 0x2201, &(0x7f0000000000)=0x7fffffff) syz_usb_connect(0x2, 0x2d, &(0x7f00000000c0)=ANY=[@ANYBLOB="1201000083147f07000000000100010003010b021b00010000040009040000015958a70009058703edc1ff177eb81c42cbb1ff99e95bb7a4167f679527efaab4adbfc5b8cebb"], 0x0) 17:49:08 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) sendmsg$nl_route(r1, &(0x7f0000000080)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000100)=@newlink={0x44, 0x10, 0x705, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x24, 0x12, 0x0, 0x1, @bond={{0x9}, {0x14, 0x2, 0x0, 0x1, [@IFLA_BOND_MODE={0x5, 0x1, 0x4}, @IFLA_BOND_AD_USER_PORT_KEY={0x6}]}}}]}, 0x44}}, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) open$dir(&(0x7f0000000180)='./file0\x00', 0x100, 0x2a6) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) ioctl$sock_kcm_SIOCKCMCLONE(r0, 0x89e2, &(0x7f0000000040)={r1}) [ 280.522609][ T8833] usb 1-1: new full-speed USB device number 16 using dummy_hcd [ 280.713633][ T8833] usb 1-1: device descriptor read/64, error 18 [ 280.983557][ T8833] usb 1-1: new full-speed USB device number 17 using dummy_hcd 17:49:08 executing program 2: r0 = socket$inet_icmp_raw(0x2, 0x3, 0x1) syz_mount_image$vfat(0x0, &(0x7f0000000040)='./file0\x00', 0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r1, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r3, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r4, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) write$binfmt_script(r2, &(0x7f0000000080)={'#! ', './file0', [{0x20, '!/+[.-\'+,'}, {0x20, '/dev/vcs\x00'}], 0xa, "2384a983c770834f535cab5bda1083537d5bf513febf5913b28676307ec805d839d98538621a799443016202b41f1045cd174b47b44c61c639f1e772e4ab4ddd38882a50df3e003ced6e0b97bf531027df680c99984966f2acf50e573360b56f38de9fe31321216eb7113460053f744334d2ab9766658c7ef676b3c7d01f74994df8259bb547ddd28621f67d827f6d03df0fbca024947e"}, 0xb6) r5 = openat$vcs(0xffffffffffffff9c, &(0x7f0000000700), 0x200200, 0x0) mount$9p_fd(0x0, &(0x7f0000002b00)='./file0\x00', &(0x7f0000002b40), 0x10001, &(0x7f0000002c00)={'trans=fd,', {'rfdno', 0x3d, r5}, 0x2c, {'wfdno', 0x3d, r0}, 0x2c, {[{@privport}]}}) 17:49:09 executing program 1: perf_event_open(&(0x7f0000000040)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 281.178607][ T8833] usb 1-1: device descriptor read/64, error 18 [ 281.307008][ T8833] usb usb1-port1: attempt power cycle 17:49:09 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) ioctl$BTRFS_IOC_SET_FEATURES(r1, 0x40309439, &(0x7f0000000040)={0x1, 0x3}) r4 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_DEL(r4, &(0x7f00000006c0)={0x0, 0x0, &(0x7f0000000680)={&(0x7f0000000000)={0x2c, 0xa, 0x6, 0x301, 0x0, 0x0, {}, [@IPSET_ATTR_SETNAME={0x9, 0x2, 'syz1\x00'}, @IPSET_ATTR_DATA={0x4}, @IPSET_ATTR_PROTOCOL={0x5}]}, 0x2c}}, 0x0) socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$TIPC_NL_BEARER_SET(r1, &(0x7f0000000440)={&(0x7f0000000080)={0x10, 0x0, 0x0, 0x800000}, 0xc, &(0x7f0000000400)={&(0x7f00000001c0)={0x210, 0x0, 0x100, 0x70bd28, 0x25dfdbfd, {}, [@TIPC_NLA_SOCK={0x64, 0x2, 0x0, 0x1, [@TIPC_NLA_SOCK_HAS_PUBL={0x4}, @TIPC_NLA_SOCK_HAS_PUBL={0x4}, @TIPC_NLA_SOCK_REF={0x8, 0x2, 0x7}, @TIPC_NLA_SOCK_CON={0x24, 0x3, 0x0, 0x1, [@TIPC_NLA_CON_NODE={0x8, 0x2, 0x3}, @TIPC_NLA_CON_NODE={0x8, 0x2, 0x1ff}, @TIPC_NLA_CON_NODE={0x8, 0x2, 0x5}, @TIPC_NLA_CON_NODE={0x8, 0x2, 0x2}]}, @TIPC_NLA_SOCK_HAS_PUBL={0x4}, @TIPC_NLA_SOCK_HAS_PUBL={0x4}, @TIPC_NLA_SOCK_ADDR={0x8, 0x1, 0x8000}, @TIPC_NLA_SOCK_CON={0x1c, 0x3, 0x0, 0x1, [@TIPC_NLA_CON_NODE={0x8, 0x2, 0xfff}, @TIPC_NLA_CON_FLAG={0x8, 0x1, 0x3}, @TIPC_NLA_CON_NODE={0x8, 0x2, 0x401}]}]}, @TIPC_NLA_LINK={0x7c, 0x4, 0x0, 0x1, [@TIPC_NLA_LINK_NAME={0x9, 0x1, 'syz0\x00'}, @TIPC_NLA_LINK_NAME={0x9, 0x1, 'syz0\x00'}, @TIPC_NLA_LINK_PROP={0x34, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_MTU={0x8, 0x4, 0x7}, @TIPC_NLA_PROP_WIN={0x8, 0x3, 0x3}, @TIPC_NLA_PROP_MTU={0x8, 0x4, 0x9}, @TIPC_NLA_PROP_TOL={0x8, 0x2, 0x5}, @TIPC_NLA_PROP_MTU={0x8, 0x4, 0x4}, @TIPC_NLA_PROP_TOL={0x8, 0x2, 0x71}]}, @TIPC_NLA_LINK_NAME={0x9, 0x1, 'syz0\x00'}, @TIPC_NLA_LINK_NAME={0x9, 0x1, 'syz1\x00'}, @TIPC_NLA_LINK_PROP={0x14, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_TOL={0x8, 0x2, 0x7f}, @TIPC_NLA_PROP_TOL={0x8, 0x2, 0x20}]}]}, @TIPC_NLA_MON={0x34, 0x9, 0x0, 0x1, [@TIPC_NLA_MON_ACTIVATION_THRESHOLD={0x8, 0x1, 0x1}, @TIPC_NLA_MON_REF={0x8}, @TIPC_NLA_MON_ACTIVATION_THRESHOLD={0x8, 0x1, 0x1}, @TIPC_NLA_MON_ACTIVATION_THRESHOLD={0x8, 0x1, 0x5}, @TIPC_NLA_MON_ACTIVATION_THRESHOLD={0x8, 0x1, 0x49fe}, @TIPC_NLA_MON_REF={0x8, 0x2, 0x80000001}]}, @TIPC_NLA_NET={0x14, 0x7, 0x0, 0x1, [@TIPC_NLA_NET_ID={0x8, 0x1, 0xe7}, @TIPC_NLA_NET_ADDR={0x8, 0x2, 0x9e8c}]}, @TIPC_NLA_MEDIA={0xc, 0x5, 0x0, 0x1, [@TIPC_NLA_MEDIA_NAME={0x7, 0x1, 'ib\x00'}]}, @TIPC_NLA_LINK={0x74, 0x4, 0x0, 0x1, [@TIPC_NLA_LINK_PROP={0x34, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_TOL={0x8, 0x2, 0x1000}, @TIPC_NLA_PROP_PRIO={0x8, 0x1, 0x17}, @TIPC_NLA_PROP_WIN={0x8, 0x3, 0x7dc1}, @TIPC_NLA_PROP_PRIO={0x8, 0x1, 0x14}, @TIPC_NLA_PROP_PRIO={0x8, 0x1, 0x19}, @TIPC_NLA_PROP_WIN={0x8, 0x3, 0x7}]}, @TIPC_NLA_LINK_PROP={0x14, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_WIN={0x8, 0x3, 0x9}, @TIPC_NLA_PROP_WIN={0x8, 0x3, 0x81}]}, @TIPC_NLA_LINK_PROP={0x1c, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_MTU={0x8, 0x4, 0x2}, @TIPC_NLA_PROP_MTU={0x8, 0x4, 0x602}, @TIPC_NLA_PROP_WIN={0x8, 0x3, 0x7}]}, @TIPC_NLA_LINK_PROP={0xc, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_PRIO={0x8, 0x1, 0xe}]}]}, @TIPC_NLA_SOCK={0x24, 0x2, 0x0, 0x1, [@TIPC_NLA_SOCK_HAS_PUBL={0x4}, @TIPC_NLA_SOCK_HAS_PUBL={0x4}, @TIPC_NLA_SOCK_REF={0x8, 0x2, 0x10001}, @TIPC_NLA_SOCK_ADDR={0x8, 0x1, 0x100}, @TIPC_NLA_SOCK_REF={0x8, 0x2, 0x2}]}, @TIPC_NLA_LINK={0x18, 0x4, 0x0, 0x1, [@TIPC_NLA_LINK_NAME={0x13, 0x1, 'broadcast-link\x00'}]}, @TIPC_NLA_NET={0x18, 0x7, 0x0, 0x1, [@TIPC_NLA_NET_NODEID_W1={0xc, 0x4, 0x3}, @TIPC_NLA_NET_ADDR={0x8, 0x2, 0xe}]}]}, 0x210}, 0x1, 0x0, 0x0, 0x50}, 0x20040000) 17:49:09 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:09 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(0x0, 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 282.032538][ T8833] usb 1-1: new full-speed USB device number 18 using dummy_hcd 17:49:10 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$tipc(&(0x7f0000000200), r2) sendmsg$TIPC_CMD_DISABLE_BEARER(r2, &(0x7f00000002c0)={&(0x7f0000000080)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000280)={&(0x7f0000000240)={0x2c, r3, 0x200, 0x70bd28, 0x25dfdbfc, {{}, {}, {0x10, 0x13, @udp='udp:syz2\x00'}}, ["", "", "", "", "", "", "", "", ""]}, 0x2c}, 0x1, 0x0, 0x0, 0x10}, 0x4) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r1, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r2, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) ioctl$F2FS_IOC_FLUSH_DEVICE(r2, 0x4008f50a, &(0x7f0000000040)={0x8bf, 0xc0000000}) r6 = syz_open_dev$vim2m(&(0x7f0000000040), 0x0, 0x2) r7 = socket$inet6_dccp(0xa, 0x6, 0x0) dup3(r7, r6, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$ext4(&(0x7f00000001c0)='ext4\x00', &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000440)=[{&(0x7f0000010000)="200000004000000003000000300000000f000000000000000200000002000000008000000080000020000000dcf4655fdcf4655f0100ffff53ef", 0x3a, 0x400}], 0x0, &(0x7f0000000140)={[{@journal_path={'journal_path', 0x3d, './file1'}}]}) [ 282.124713][ T8833] usb 1-1: Invalid ep0 maxpacket: 7 [ 282.292443][ T8833] usb 1-1: new full-speed USB device number 19 using dummy_hcd [ 282.385626][ T8833] usb 1-1: Invalid ep0 maxpacket: 7 [ 282.391498][ T8833] usb usb1-port1: unable to enumerate USB device 17:49:10 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(0x0, 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 282.616805][ T9836] loop2: detected capacity change from 0 to 4 [ 282.658207][ T9836] EXT4-fs (loop2): error: could not find journal device path: error -2 [ 282.769790][ T9840] loop2: detected capacity change from 0 to 4 [ 282.786577][ T9840] EXT4-fs (loop2): error: could not find journal device path: error -2 [ 282.902683][ T9821] IPVS: ftp: loaded support on port[0] = 21 17:49:11 executing program 2: seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000580)={0x3, &(0x7f0000000540)=[{0x2}, {0x44, 0x0, 0x0, 0x8}, {0x6}]}) openat$tun(0xffffffffffffff9c, 0x0, 0x0, 0x0) [ 283.620700][ T9821] chnl_net:caif_netlink_parms(): no params data found [ 283.709514][ T34] audit: type=1326 audit(1619977751.597:34): auid=4294967295 uid=0 gid=0 ses=4294967295 subj==unconfined pid=9964 comm="syz-executor.2" exe="/root/syz-executor.2" sig=31 arch=40000003 syscall=403 compat=1 ip=0xf7f86549 code=0x0 [ 283.949079][ T9821] bridge0: port 1(bridge_slave_0) entered blocking state [ 283.956560][ T9821] bridge0: port 1(bridge_slave_0) entered disabled state [ 283.966327][ T9821] device bridge_slave_0 entered promiscuous mode [ 283.984764][ T9821] bridge0: port 2(bridge_slave_1) entered blocking state [ 283.992429][ T9821] bridge0: port 2(bridge_slave_1) entered disabled state [ 284.001988][ T9821] device bridge_slave_1 entered promiscuous mode [ 284.098237][ T9821] bond0: (slave bond_slave_0): Enslaving as an active interface with an up link [ 284.184554][ T9821] bond0: (slave bond_slave_1): Enslaving as an active interface with an up link [ 284.280862][ T9821] team0: Port device team_slave_0 added [ 284.296878][ T9821] team0: Port device team_slave_1 added [ 284.352487][ T9821] batman_adv: batadv0: Adding interface: batadv_slave_0 [ 284.359533][ T9821] 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. [ 284.386361][ T9821] batman_adv: batadv0: Not using interface batadv_slave_0 (retrying later): interface not active [ 284.419060][ T9821] batman_adv: batadv0: Adding interface: batadv_slave_1 [ 284.426317][ T9821] 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. [ 284.453732][ T9821] batman_adv: batadv0: Not using interface batadv_slave_1 (retrying later): interface not active [ 284.521796][ T34] audit: type=1326 audit(1619977752.407:35): auid=4294967295 uid=0 gid=0 ses=4294967295 subj==unconfined pid=9964 comm="syz-executor.2" exe="/root/syz-executor.2" sig=31 arch=40000003 syscall=403 compat=1 ip=0xf7f86549 code=0x0 [ 284.556474][ T9821] device hsr_slave_0 entered promiscuous mode [ 284.574776][ T9821] device hsr_slave_1 entered promiscuous mode [ 284.625897][ T9821] debugfs: Directory 'hsr0' with parent 'hsr' already present! [ 284.633920][ T9821] Cannot create hsr debugfs directory [ 285.296820][ T9821] netdevsim netdevsim3 netdevsim0: renamed from eth0 [ 285.424670][ T9821] netdevsim netdevsim3 netdevsim1: renamed from eth1 [ 285.568447][ T9821] netdevsim netdevsim3 netdevsim2: renamed from eth2 [ 285.700781][ T9821] netdevsim netdevsim3 netdevsim3: renamed from eth3 [ 286.987278][ T9821] 8021q: adding VLAN 0 to HW filter on device bond0 [ 287.084353][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth1: link becomes ready [ 287.093807][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth0: link becomes ready [ 287.125483][ T9821] 8021q: adding VLAN 0 to HW filter on device team0 [ 287.174575][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bridge: link becomes ready [ 287.184670][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): bridge_slave_0: link becomes ready [ 287.194161][ T8452] bridge0: port 1(bridge_slave_0) entered blocking state [ 287.201504][ T8452] bridge0: port 1(bridge_slave_0) entered forwarding state [ 287.283127][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): bridge0: link becomes ready [ 287.293075][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bridge: link becomes ready [ 287.302916][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): bridge_slave_1: link becomes ready [ 287.312269][ T8452] bridge0: port 2(bridge_slave_1) entered blocking state [ 287.319596][ T8452] bridge0: port 2(bridge_slave_1) entered forwarding state [ 287.328910][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bond: link becomes ready [ 287.339978][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bond: link becomes ready [ 287.390383][ T18] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_team: link becomes ready [ 287.401074][ T18] IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_0: link becomes ready [ 287.494156][ T18] IPv6: ADDRCONF(NETDEV_CHANGE): team0: link becomes ready [ 287.504225][ T18] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_team: link becomes ready [ 287.514559][ T18] IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_1: link becomes ready [ 287.524966][ T18] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_hsr: link becomes ready [ 287.534681][ T18] IPv6: ADDRCONF(NETDEV_CHANGE): hsr_slave_0: link becomes ready [ 287.611110][ T9821] hsr0: Slave B (hsr_slave_1) is not up; please bring it up to get a fully working HSR network [ 287.625281][ T9821] IPv6: ADDRCONF(NETDEV_CHANGE): hsr0: link becomes ready [ 287.653909][ T18] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_hsr: link becomes ready [ 287.663911][ T18] IPv6: ADDRCONF(NETDEV_CHANGE): hsr_slave_1: link becomes ready [ 287.736880][ T7] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 287.745725][ T7] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 287.841410][ T9821] 8021q: adding VLAN 0 to HW filter on device batadv0 [ 287.918116][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_virt_wifi: link becomes ready [ 287.928392][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_virt_wifi: link becomes ready [ 288.008921][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_vlan: link becomes ready [ 288.018809][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_vlan: link becomes ready [ 288.045419][ T9821] device veth0_vlan entered promiscuous mode [ 288.055594][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): vlan0: link becomes ready [ 288.065080][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): vlan1: link becomes ready [ 288.107934][ T9821] device veth1_vlan entered promiscuous mode [ 288.194321][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_macvtap: link becomes ready [ 288.204963][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_macvtap: link becomes ready [ 288.227246][ T9821] device veth0_macvtap entered promiscuous mode [ 288.255355][ T9821] device veth1_macvtap entered promiscuous mode [ 288.302781][ T9821] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 288.313929][ T9821] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 288.324073][ T9821] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 288.335119][ T9821] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 288.345192][ T9821] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 288.355886][ T9821] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 288.369860][ T9821] batman_adv: batadv0: Interface activated: batadv_slave_0 [ 288.379555][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): macvtap0: link becomes ready [ 288.390058][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): macsec0: link becomes ready [ 288.399742][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_0: link becomes ready [ 288.410031][ T8452] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_batadv: link becomes ready [ 288.454573][ T9821] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 288.466493][ T9821] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 288.476622][ T9821] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 288.487378][ T9821] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 288.497500][ T9821] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 288.508244][ T9821] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 288.522428][ T9821] batman_adv: batadv0: Interface activated: batadv_slave_1 [ 288.530789][ T7] IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_1: link becomes ready [ 288.541068][ T7] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_batadv: link becomes ready [ 288.574384][ T9821] netdevsim netdevsim3 netdevsim0: set [1, 0] type 2 family 0 port 6081 - 0 [ 288.584041][ T9821] netdevsim netdevsim3 netdevsim1: set [1, 0] type 2 family 0 port 6081 - 0 [ 288.593114][ T9821] netdevsim netdevsim3 netdevsim2: set [1, 0] type 2 family 0 port 6081 - 0 [ 288.602025][ T9821] netdevsim netdevsim3 netdevsim3: set [1, 0] type 2 family 0 port 6081 - 0 [ 288.993142][ T48] wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 [ 289.001101][ T48] wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50 [ 289.009679][ T5] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 289.138927][ T1202] wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 [ 289.147260][ T1202] wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50 [ 289.156083][ T8451] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready 17:49:17 executing program 3: r0 = syz_init_net_socket$ax25(0x3, 0x3, 0x0) recvmmsg(r0, &(0x7f0000008b80)=[{{0x0, 0x0, 0x0}}], 0x1, 0x40, 0x0) connect$ax25(r0, &(0x7f0000000000)={{0x3, @default, 0x2}, [@netrom={0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0x0, 0x0}, @default, @null, @remote={0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x0}, @remote={0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x0}, @bcast, @rose={0xbb, 0xbb, 0xbb, 0x1, 0x0}, @bcast]}, 0x48) sendto$ax25(r0, &(0x7f00000000c0)="eb076acee8e3e3264f80312aad4a5760ae7c35792f6d80fb603d1b9221b5e76538797f61caedc2d6f21baeb06c4a7d962e9473f0fcb1ad4b43ed65f83bf9096282b06b47034efed5b7827a4b8c5f12b84c21bebfe8e3586fcf732918ec3ed173c63a0eb97adc5e5066d528aa63ab42562124565dea3c5d9f2c37fa4bbd361c5d7254ab1ce17ed4f39d17449da27e93535762630162a9c3f18b122c81b134c3f52ed6d7633d3c1a23560ceb970db0d885b39af0f24686af0bda166b5ed43425ffc06469f67cbb443694a419cd9613893b749c953fa1f1270ea886e0f210c018d66a55d8fb4cb57c5c1d8877d6fe7f4951d1e4e23945b5c24fb06c970b3f5a15d856f1be9ed8465fcb3f95674a5357af263ab279f092e74ad4780027de0c9acbd7e295fe52915b2e381dbeadbbf70580a7a336d0c4ec868bb639f867a3a077a5b482e9d992c1c275f4198b0d7ef743f2c5966968614c9375dccff3e1a6205ce20c2ab5ba09d10f1477e1e542ebfa808c6a6650a2e2a00e08e72d27c8da3b49ae263ec787d3c25b502407d5609a31e366b5d38222e9927d9478778950dbd620243c83d72d03c4cf9aa6e6176a8fc7c4da359e9aeaaad3b6cb8d219a1dd665926956c16efe405231486292c9f5400737c6a65e152da80abd9fc03dfc792a9bf4aeb93fc8a4a398408953e2e5ab2e96cf0ba5720d0875ecaec923fe5f460d19cacb43a3b318599d7bf9899d66d474cd52bad8353190b99f72d3abd8bfb97f983e658847e24401cbb93c54cfc821aa77a266852a2d71779b2680c64f8b16283eddca92b87daf6894b52f02cb7876dd5b7fe9fbe7e017715c37fe11f2edaf01d3e214ddcd0038514530bac45d011d8ff077bc90895f2fea77510a74b4fd7764a0e1e6c4e4e5b16dd063e4fa02dbd83524b9e0ddbab1b7838470a793116ccd9c933a46e8653fca263791524bfaf1d5dd3be8d9705e429715e71d3e691a0f3057ce9837a070ad546586310631624a448081a8e88a7b17cbe87dafd1749a8d14b277249438fb09310f26deb13cd7829a1ca92e48051ba2ca074c5c3215650f665c6359c53a7b4a7045b106d2202fe9f654bef1507fdd93a55fdf4d86d4a009c5a8a8f3527a3c9e280c74e3a9674ff28c5092227ad925dc21e5f3f3c7e5dbb0bb316b9079d0da0228be2c17839e4fc76115a8872f9b769bb6f51d5704df6e6383b63771583feda57ff0b7bb033da75937025882094e8f46f1cb38900432c584df2a29bb4f9f2587b2c045a58a283361b96f69218889fab4a99df35b1a1df36a7e79acc96e62c693447846f964c11f1febc5e08500dc52cea017baac6e223fdc98f6391df40425194b6825fc94204f5cfa2bd75a039ef0128ff5738f1933592b2480ca30ce265202eb8e44cdd4d84afb274696ddd968bb1ef2c48cba5629c6285e703ccd6bccdd49a58ed6e702182dd09f2d203d8f63d466f444fb7c94f4bb4cc05be6284811eddbd4f89128b0189d9649cde06f99b090694632ca14a3e664c91d274440dbb9a2c97fba267d46aaca86de51017635ebdee378156df63b81fd95d57adf73cbd24e8ff4547016e0a24643d85109f2498d717d5f1e628b67dbfc61d9cf41be0b5130d348bd8474e4d4fbe62f57cd904179cc97fe4ee7c66cdab44a8af74c34b34106aa1c3e53235ee5956a47daf996c55542de05a0b0450a57aece20bea8f463cddd8a1fe5487471cb245c6b886ef5ad7e645503c2ba3070481dc7c19b0cbd1fe883a280605858891b0e32614939aa0d88d80a866ffeec61e6441897bb80ddc63ea786442a55df06511b9b059959153eca0e755e8dac14511d275d276dc658deff1028cb7b7602adf73effcc4104cfb3c329b8c452a7629d4aa6b249c0f175a795b9c2796d117b517a69ffe5c6568d46f75b6cd1cc165892abb931e341abc6b0b0364f28291c3f176a6bf4ea936c30f2a866f4efd4a2f6ea81ab0bec80445b6c852b9a89d4010bf3b6ce88b16bf2bb97302e52b83bb04b59bf84b6189ae747601c7cf5552b666a65bba2155f327f7bcf2adcbda03a955803cd4819207f4b51d6b2fbc2cebd5cb482b2b1e5d07941b243f214ce5558754da6365004879444bd94d305161549684559a4aad6362bbc95461a9c2d3f74bb72767c858dab0e13a70dd41c1c83cd6863ae80062fdd784180b9180d489dfed7c302452db3913eb64d1a64e35ade84894035a07a2289fec8caf6cf11a01e3f0a8f350722627f9772d2f505c6144709207b3ae745cdf8df9dcadd63b4ac86052868a517a3c76f2294c259244001fba7b41970bf7c585f047e3a2a85172a9424a5b033d2b62b50d0bbb541df843bed80fc520f8817f5d8ccf0de0cfdef72cc54e8a4f2587febb0f6abcd743afaae0ddfb8f7f52446620819111c333ffff40bc321a1ec635177903fa64a4e1ebad111105076fa4910206a2a7194de472f5be03148c38f7f138ab512374d0374c65c8cd9cd5a21a11c805b54248536616b0465fc10d4200def35ce835f6fd64dc5b96b93971a570be6cd68a4a4d8fd4fb322bd331273ba5c4e27ee866ca44e96a32d2de672488f26a2993bff3464cb7eb9e71d99b5fa8952673bbe95bce7b37a719100769793aa443984acb942805bce104d8445f681627e00dd8879bc640985e9f8d7dce42fb9c0b2a961c837d28c67999f8ea7bc0536981da3c5265c5d393aaee2a50a2653a772d1836d549f6e786b98488d94e3999db53a61b5c9419774c5bf68dfddd0391f5c5764b20783f1c5d0a6cb7b24374ba3ae5629a4b3e0c2cd698e281d2702380b57573b0bfd6f98f3b413a9a5b4073bf8a655fca1ae85de190ae1b92fe13d3c7a5d07c5f5a7cdcf7d32c67e973d25271aa558341a429b85a1b256c02fcb677590c2234e674efe2f99b30a65f401eb9ae7a025074cb3f67a8af91282e01ae794266c421fa02f38b0966265f885a333197ee02b292e80bdc838d195ce3185de0e9e33299e667a2b030250a7b105bce80d1030d2e492bf614f5578eb931aeca8a40168aede55c9f9767c16cd87f7ae9fe674e77344e81716523670c1772417e7f1a5b0bba6a28ef1532c4bdbcc22af9a5c5acad5511adf2695743f80df52ad101d81e283324053941ffb2872466d08457551c324c68646c9dc1506d1a1732f3da70a1f07b52d23ed0a47e493224dc3d7360ac282a70cc7b2b17877ef002aa20616c3109b2dc9928c91db097cae0d17863094f949b8bba175420978e0d35e50341a4b6008604e2c5fcec4a1a66183506c53d9e23ab48e0d994c4e54851c764577e6e4f8c18f31be47d4c2b954f2b429dd771339f6f731d87c3c245cbef2d252fe54bb9b60867e5205f329a3d5facb415aff1c8d68f821c5ea0150c70913449dd64019f7fd3a8937985e9f089aa9c72c606300508f9c64c26e480c1f43fb6d6af62f0d1780af441c7ce2d0ef57de11d91170440dec793c5f76a4cd9ddddb43ba4345a1934e810a5d5f8263848c0425482e729c81c00babfdb79da4e42149225237ff36046c858fbe195544afa65f482f34743f28c2ccdb8a802745f6c7382d74167fa8dc45f0fbab362b1d10bf7c950d3ba3ccfd7151f70a2900579b715c8cde51a68deb5efbc03e923b12b0445bf7959bd7c9a28aad142fee2d3753c9c389868877aa301d45b1fea68c0161fe2ad07d806f8d39f5633eb79c61dfa37283d4f16557d51bfeec9effa8fa6eeadb562ff77918fa13cf7bc919d8a7a5806304c533b7eac13fdcd04620f584b55a2dfe143038bee13efe4aed7fb12257b18b7ac3afc186d0436f30cc9d7204aa7218c99ea08375103841ae3001e4b4b365be8864f0e8b0a46eab52f4676278f4754fe3982cc754757478e1416cacb4fa4f17a6f1ceec30da4a5f16d5a57434b4716b18f7c239ace6aa48549da51150c60527ca773020d925fbcf655bccddac7221c3eae8c7d071497d2d60cf2241aa6b9ef0112aa52bbd864f30b2a48b2a2429c9e2de65d253a369b1b2e542891ba841e451b78a353ca6f6d057b7d0013a3612cb76178760bd93392dd82a0c64b01e03f06228cdd694447f2967bef5cb48786a5c52809b5a22f9511ed4ba8d1442b2734fbe39a66312c57903741ea829e89d494ce2e755318690ccfcf36bdedf6c43d83a76a3438b171cb7a3ce3008355474dcaba33fa3a126d5c0c73aa10949d996616964eb1c9df53f1070bfbf0136f40e57895f8acabeef043e0c66cc18de69b240fe8893806f6ce14b73ae0218d9ca4bbd94f8ded35231ed806ae7c3d943ee8154f76cd983eef246c3675a8d711988e13f1de438a488a165e711740bc4d171ab4a4ffc06a42c0c720598ff38bd2fa4a42ff7a2155a5818c73e475bdcaf5c29ce094a1204319cd189a7d63641a45bdf5f58e7439ae6bea97cceb99d33425028802cda03a38b9ee0666f7f1dd4d54390ce2fc26cf836097a6141f07a5fc91fcba013dcb8de5eed01afe5b01a94f8204f5562b7aab6cf413bdb6703b0884d96561ff1130f6b6edda931c1ea41a56a846b6da5d6654621c4faa456ac060ce7a49734184f2f783109f9fcf1bfb3d9a1b14448813dbf93e395b6f053e0ec88d8dade9a8ebb8d24bd82a9b0431addadec0d621f0d6dfc9cc4b82e4e204abd9c81cafc22fc480fbb8d94d80230f09ab4614c4898f36dc10b7a0763027f05158a8f55cd3c46fea649288c3845d39264687226496520993295326c8181e67d7941a46ae49ff4469e94e44689f2129d5d30822491dd3f75630ac76a49b833f02bd4e7b5aba5657fb2bbcb0798cf789d1ff8001ffd9ba1efc4ec6b5c0f29e49ce0edf716edfb6c20d4969d62c600b072a21febf344f569f5bb1eb0b2906a6097955c1e14c99039b36e35ec0ce832abbfbb818a87cc68ea672a97cc2c71e35f99144e0a1aa36f5e08ff321db6087acdbd6afcd8301d02906ad0cad253024a1bc57941ede363b797407765f7f55b2ff4c8fe94b2c17727e671a3e256441276ad3786bb8d59513a5984113f27dbd5e5f1ef7ac5d2d63ed9cea087b35db46a99c96b91a3fe3be2a9025759dda8704674733ec417c0836425c5a6887107189176523a5e7c46dcd98963a82db2049f4dccf4957f921a6eb5a134ec2571e615330a5dfa61367470a5e5d5ac4ee6f8b9b10d1f8d7d9ced6f97ebc349b856436c6c7fe0eca9e3c971ca48ea9ef6681977ce14c2e3d49d1c9bbb1cf30f362fefb62904470c4f527c14c14d3f7cfaecbb813b374097d83ab8fd7321787d4e54f49688b6eb48f2fdd1b308f943ee0bb535ac92e0627d6dea919ae9d332ca00363b9717496a481c331ba3d031de49482eb7d403e7fb355a72623c38c56e42f646a733d1c233a5504c2b09e1683af6dc11c0ff75d460eedcf040f9c7f611bfcb320322802b91f8fb616a690a5628fe18b8bc56b15b587c443255428364e7c1eb3c735e609a5560c79df19e1ef2e053ca46f3b0c9d59130e84b8aa9fbe7f75f44f16b32ed6e17b232015c1791b2ea43a8b306bf1764faf7aec282bc09985396b7c9ed5cbb311235180cf2bbacddea6a92e1e37cb2401244551c0a12d6eae21d3328d49af9b5923c247808003bb06391a31a7579a93ca2a53cd1760df101c3a286c156043a6f276b6cc0f063a2d8a12a38195c8c6500540a40f31dcf4ea9e907db761145d6767d426a64017f9655f306619e980298c8bc0d67082660983a279967f9e0473e647f909278862bcd7279dd77e2528f657c81ef26dbd4f872ccd0648da83d32e2d56d753de60be36825fe11", 0x1000, 0x40001, &(0x7f00000010c0)={{0x3, @default, 0x8}, [@remote={0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x1}, @remote={0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x2}, @default, @default, @default, @rose={0xbb, 0xbb, 0xbb, 0x1, 0x0}, @remote={0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x2}, @null]}, 0x48) syz_mount_image$omfs(&(0x7f0000000080), &(0x7f00000011c0)='./file0\x00', 0x1, 0x0, &(0x7f0000001200), 0x800404, &(0x7f0000001240)={[{'}.+,'}, {'[\''}, {')['}], [{@subj_type={'subj_type', 0x3d, ']^\xa9'}}, {@smackfsfloor={'smackfsfloor', 0x3d, '.'}}, {@hash}]}) ioctl$sock_ipv4_tunnel_SIOCDELTUNNEL(0xffffffffffffffff, 0x89f2, &(0x7f0000001200)={'syztnl2\x00', &(0x7f0000001280)={'syztnl1\x00', 0x0, 0x1, 0x80, 0x2, 0xfffffffc, {{0xc, 0x4, 0x0, 0x4, 0x30, 0x66, 0x0, 0x3, 0x29, 0x0, @private=0xa010102, @multicast1, {[@rr={0x7, 0x17, 0xc6, [@private=0xa010100, @local, @multicast1, @dev={0xac, 0x14, 0x14, 0x1e}, @rand_addr=0x64010102]}, @ra={0x94, 0x4}]}}}}}) connect$ax25(r0, &(0x7f0000001140)={{0x3, @rose={0xbb, 0xbb, 0xbb, 0x1, 0x0}}, [@null, @remote={0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x0}, @default, @null, @bcast, @netrom={0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0x0, 0x0}, @remote={0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x0}, @default]}, 0x48) 17:49:17 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(0x0, 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:17 executing program 0: r0 = socket$nl_xfrm(0x10, 0x3, 0x6) r1 = socket$inet6_tcp(0xa, 0x1, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0}, &(0x7f0000cab000)=0x6) chown(&(0x7f00000001c0)='./file0\x00', r2, 0x0) sendmsg$nl_xfrm(r0, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x10000}, 0xc, &(0x7f0000000200)={&(0x7f0000000100)=@expire={0xf0, 0x18, 0x8, 0x70bd2a, 0x25dfdbff, {{{@in6=@initdev={0xfe, 0x88, '\x00', 0x0, 0x0}, @in=@dev={0xac, 0x14, 0x14, 0x44}, 0x4e22, 0xff, 0x4e24, 0x0, 0x2, 0x20, 0x20, 0x67, 0x0, r2}, {@in6=@ipv4={'\x00', '\xff\xff', @broadcast}, 0x4d3, 0xff}, @in6=@empty, {0xff, 0x7, 0x8, 0x2, 0x1, 0x9, 0x4, 0xfff}, {0x9, 0x3, 0x4, 0x81}, {0x4, 0xf32, 0x2}, 0x70bd27, 0x3500, 0xa, 0x3, 0x7, 0xe0}, 0x89}}, 0xf0}, 0x1, 0x0, 0x0, 0x48000}, 0x2) r3 = socket(0x1, 0x6, 0x0) shutdown(r3, 0x1) sendto$inet6(r3, 0x0, 0x0, 0x401, 0x0, 0x0) setsockopt$inet6_tcp_TCP_CONGESTION(r3, 0x6, 0xd, &(0x7f0000000600)='dctcp-reno\x00', 0xb) r4 = accept4$x25(r3, 0x0, &(0x7f0000000640), 0xc0800) getsockopt$IP_VS_SO_GET_VERSION(r4, 0x0, 0x480, &(0x7f0000000680), &(0x7f00000006c0)=0x40) r5 = syz_genetlink_get_family_id$mptcp(&(0x7f00000002c0), r3) sendmsg$MPTCP_PM_CMD_SET_LIMITS(r3, &(0x7f0000000380)={&(0x7f0000000280)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000340)={&(0x7f0000000300)={0x14, r5, 0x400, 0x70bd27, 0x25dfdbfb}, 0x14}, 0x1, 0x0, 0x0, 0x40}, 0x4000050) sendmsg$nl_xfrm(r0, &(0x7f0000000080)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x80000000}, 0xc, &(0x7f0000000040)={&(0x7f0000000700)=ANY=[@ANYBLOB="600300001c00010028bd7000000000006c0c0008000800080000000000310114006372637431306469662d706b6c6d756c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028070000c0000000330477b996f5a07db432f836134882327e0666ca6f83190f2a4b242a48a8a559bdac2ee91289bded75d0b7b2ec2a93e5340a62ff6b155ded3d882fe3b8eba542e915637638f02a4517d8d209f418de802eb53e1b07682f714ec884c3f6399b432e0064a4c87293b3b3282e78edc9a1350c8471e5643720ba0cb3221459d6eeef1ff074eb75f1d5cd02c5e664356ef9456a76e0924898b234be3aed67962a9f1c407bfe0bde87cbf33d1c24a6c9c95d5a09c9f7a9ead18c1acca4d8dbca85a135ba3b80e6ff439b886c2b9933fac81bf33315083bc845abb459269ef5813951b4192fa13c82cc09318c00000044000500ac1414aa00000000000000000000000000000000000000000a000000000000000000000000000000000000010135000004020100faffffff810000001ffc0000a800070020010000000000000000000000000002fc0000000000000000000000000000004e23000000000000020020a03b00000077d6a7ee7e11375bb2d66f32c625fb43e30d981edcd234a188196f7cb5fa37e414c7722c8b1c5d4580b526bddbfd966fe4c9415c9f53a0a4c75cf883640fca6e695799de1a1eed992559fea6f767a986d6dfd8cb8c2c2ea1f731845a0dcfe0223c57e32fc86f022ce7b09ac92c12d94e450aec62c1503da437e85c9c41897a054f580178ae359414ee2701", @ANYRES32=0x0, @ANYRES32=0x0, @ANYBLOB="0000000000000000000000000000000000000000000000001f000000000000000000000000000000008000000000000026020000000000000000000000000000070000000000000000000000000000000900000000000000ff03000000000000063c0000400000000201030110000a0029bd700026bd7000020000001c000400feff4e244e210000fc0200000000000000000000000000000c000f009b08000000000000e800110000000000000000000000ffff0000000000000000000000000000fffffffffffffc0000000000000000000000000000016401010100000000000000000000000033040000033500000a000100fe8000000000000000000000000000bbfe800000000000000000000000000000fe800000000000000000000000000031e0000001000000000000000000000000320200000735000000000000fe880000000000000000000000000001fe880000000000000000000000000001fe88000000000000000000000000000100000000000000000000ffffe000000100000000033500000a000200000000"], 0x360}}, 0x0) 17:49:17 executing program 2: r0 = syz_mount_image$reiserfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010000)="00040000ec0100001302000012000000000000000386000000010000611cad49e10000001e000000000000000010cc0302000100526549734572334673", 0x3d, 0x10001}, {0x0, 0x0, 0x212000}], 0x18006, &(0x7f00000002c0)=ANY=[@ANYRESDEC, @ANYBLOB="94d42fbe06b3b5c506fb18c6fe9d0a0d55c03216f23cdcb32b9affdf76a51cd76e6b4dce405ec9ee62df9d7c6b96c80f32889c71ececc0ea5d7376c1251637ccf8ec6bfe33f8cdce3c84c86cc995e730b98964b862f73b72a718a1854b8e7d722e9e70fd7d1b06a491a2948ea0a63b529c0b1a49236e87eb0b0adf3382530d9f23e0e00d7578e6241be85eb6f92eee50a31a14d5bff4ddc683589613a13da86270899e43dc495d4973c34fe3d4a79c4c"]) openat(r0, &(0x7f00000000c0)='./file0\x00', 0xd4000, 0x18c) r1 = openat$vcsu(0xffffff9c, &(0x7f0000000080), 0x200000, 0x0) r2 = syz_io_uring_setup(0x7342, &(0x7f0000000140)={0x0, 0xe439, 0x1, 0x3, 0x3a, 0x0, r1}, &(0x7f0000ffd000/0x2000)=nil, &(0x7f0000ffd000/0x2000)=nil, &(0x7f00000001c0), &(0x7f0000000240)) r3 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r3, 0x0) r4 = open$dir(&(0x7f0000000040)='./file1\x00', 0x4000, 0x142) getsockopt$sock_cred(0xffffffffffffffff, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0, 0x0}, &(0x7f0000cab000)=0xc) setgid(r5) r6 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r6, 0x8933, &(0x7f0000000100)={'wg0\x00'}) socket$bt_rfcomm(0x1f, 0x3, 0x3) r7 = socket$nl_generic(0x10, 0x3, 0x10) r8 = socket$nl_generic(0x10, 0x3, 0x10) r9 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r7, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r8, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r9, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r10, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) sendmmsg$unix(0xffffffffffffffff, &(0x7f00000037c0)=[{&(0x7f00000003c0)=@file={0x0, './file0\x00'}, 0x6e, &(0x7f0000000900)=[{&(0x7f0000000440)="8e85c17675ba0d33c4dcf7eba6427cf25b007851a1524dc65e0258f6dc7b11845d38507789055912799cab2262d9bd6dc3c5da16d3913763f30d7e68ba408b984edecf84fff28c9a898331f665150599b242cdc858c0beea23029e19e17d3ac8b2b615f76a612396c7e7551671f2d5f81708780df40a40feb68f34d43bc514d6e1996f08d2d82054c87cc88ea82e2112911d70d049ccbe03de19419843ebd0438c51d0baad3393a480ee6320e18266d27c47168c53339bb032883343ec21ec332f1a113da3f0b2283c3310a2fd5eea00fb8fcc4da5cffbc55304cf3f9175455a69b99d66ddfb74", 0xe7}, {&(0x7f0000000540)="5b860c3d0459732e5a99529b00b922c614f486499ad9d9e3e7e7f51eae9fbf7ea58cd9a00a1396c3c76be05a122a95d3e4861ec3cc6a0a0e1b7c0fddd6d4a7f1ffa15a12166b905c3bd47d46e6c3ae1f47362e128d6276c73496dedf9267a3df4201ee769ac1761c11814cba500adf540d942e0d9b73457b33727d1f53ebbdfffc75cc544f35f46677569e85d3706456944f82ce745ab4c0280b967401300c83d81276e5eafeacd682bb70c440a0ea75ebe38d7904cd0da99387ca", 0xbb}, {&(0x7f0000000600)="f596e934299d1cea357cc32fd734e8764dc5b55059a3eaeb83f0e965f1d55e1a6d667cfdd94238b3234370dace6053e96948ff9d5b69361241df9be4d3ae5866719e12bdb84a626b328b01df29eb3c68ebba7af26c034b9c66fa460941133570fdc898e35a51d6bbeb14f72120447a65281f57", 0x73}, {&(0x7f0000000680)="00afe2d219065e4c1a1cd39c211c443b15f82dfe5945964ed89cf1926665ec888f661130db41bebac07e3e6e7d95ee23f2dce5ec59974b8941e372b891b9defa5d29473893863b59ee15e6d73fb3d7aa00f673bdcdd4c4cbe5b2ee15f5d8f1ddd9ac6d44de015bf7984c0d1079f6293f3c381f8fd7fc9dcdd7f5", 0xfffffdc7}, {&(0x7f0000000700)="9252017e38dc7c5b82adfd5fca231b6b51f89212b60fda71eb4789a2de7694afcbb26366cfa04b732e90fbcab05ea2db26422e9c02f4fbfddd6f32d415aaa13ab7c2ed18194c934c43b3efb41c6632d6a8cb7d7cc830b1b0e5b091b13780b33756a9888eeebc0245ae12bd8fbc574fda5b74d3d6c7e47c879a3dddc468f9300c8504468406d6fc529a11d26db79939c2550fdb7afc3fae1fbfd55a116d20a3dcb29289957fb2ca6436410a9e07584c1872a3f1e102946cca2ddcbf73e245536204de88fdcbc0cdd44fb6f928006118456a5ae90df4ec0ea373e04e8483e8cb5d5e76a4150b058f3adcb29b9f", 0xec}, {&(0x7f0000000800)="b74feb07486a08a9195b4742bb466c5446a709b6a2b2ff5426b5db30357bd4808cda08edc3f455edfda73dfd083f1e31b09a5e94055832434cef0a9b755fdd72097c1f01995a3618a112b3636b2f07f2f15df4b78950c31c0794527162e19882b4b19cacebc5f0ce4ebd08f48f9e9152156321cf4a8971c3387b9c6b05a7cd6ae760f3c673c46b80321de2fa33dc810c9f34ff5ebf59b7cde279709cf731ce752de5c73cf9a84a46d720fb65bcd60099d61dbf46eebcdcda93f36d2ec1830c326194fcf4f4c80ab3a98e227d738ac2d23e8576ee8d48fddb760b41113071abdd36bc55b544e8e0b7eef493315f", 0xed}], 0x6, &(0x7f0000000a80)=[@cred={{0x18, 0x1, 0x2, {0x0, 0xffffffffffffffff, 0xee00}}}, @cred={{0x18}}, @rights={{0x10, 0x1, 0x1, [0xffffffffffffffff]}}], 0x40, 0x1}, {&(0x7f0000000ac0)=@abs={0x0, 0x0, 0x4e23}, 0x6e, &(0x7f0000000fc0)=[{&(0x7f0000000b40)="54ac0fd8af6d7e931e29a35d78ef21d8a8bbd84c5210b10e8f03fc85080013e5e1a2e198b71406154415dcd657c764a5246570d6590e2adeba00cbd268ed5113c4b0a19441209b53b7e7b160c3b8652d4ae808dcdf8e720e0ef64de76a9246426f6d93ff476098d0a6e42ef708cd5b3bd82fa3bdda7d17f9ae7ffdcf1a334f95", 0x80}, {&(0x7f0000000bc0)="8ceb86b066b4cc80c2440c5ac3f8f036ec90327770d75eb5a34a891dc7c89f18cb4e0e9ac39688857d5afb5bc8fc51f3947cd3beafcf23c6d31feabd7d8689266ffa072d79185b8444eedf16272fe744321812c8531b2d89ae3ef522c88322536398f34a11040540bae913cdfb990216170cc468b37981bd39fd8328f5e6e3b3bb4e6fc464dbb34e4656a97ae25491328a7c31ff3f48a6c541dd945d380b6fc423318e8431ae", 0xa6}, {&(0x7f0000000c80)="2e66699159622fbe0985be1247aa460e0cf0dfd0a410916eee28ee6287212c0c88c404433745ef60ee26284dfcfdea8f13edc8d30296b10c714e454779f318b63be4500c7de6805f8faac7f7659bd9f1984f3a76e4d471cd852cd31ca778107be72996764c424255fd644ee1247a6be3db33846bca71791884a09f63803c192b1ef4d4c0ca9e495ed7ed8445c384163bdbbd37b7993f993e48cbd3152e468bb0679609913104bd0971b639ecf6f8bb10ea156b38fdfb41d7274b770b23e6a707d774bda5d746ccb9041226d48a0e4802972de5a7c06b29e9ae0d01d4", 0xdc}, {&(0x7f0000000d80)="dc43944cab3fdaca7e91e0f33a6195dc77c6c14419c411f6d5a8f163fbb3122f1c4b1b1343632888fe596270a717990322a4b1576ab29f928a500bf96d320cb71bd03badabdccbfd811de1550033e5065763e04558ef461d9ecd6cb947769f5b627e35c6708fdbe3031c235cd44b76", 0x6f}, {&(0x7f0000000e00)="4fca32ae5f7e387495bf0b0c427131b9fcf55edb54aacbdcb00a8d1c724a7869383c5a26eed7837598b806c9d6da2f9b4160cf54d24d59a6f7aeae59ce2484be6536432d5d9d91bf70bd2b2af17c1f0937f810e73cfd73bc5fc581942c16a5e4b72b3342d791a890211cedb976baff1c45d9642933e7d20a9ebc4e6ad889f191f53b8644f0111ac79ed5bd5c0f8ca2fef2f6e1f8b300a5bc6dbcd0f8d7fb8fc60011d335654ac586bf5a0c95e5d9cb56dce9740009430f", 0xb7}, {&(0x7f0000000ec0)="7f293dc06e126de49765b78b20f2a37474ac5853ec3571acf06cc9b69e4eb9bf72eff046b59ff831948f8f874cf1e14530b3812c5c01dec299ea22d19acfccab02ed3ce139", 0x45}, {&(0x7f0000000f40)="d1e053fe1491a1540a90cf52a68720e02495de1d88bd33a706b553507d2298cc9a6f6dc299f3ca1292ae497fd33c6e7b739f154ec5a99ee6b404b466ee1d6314636505dfbfa7ec3e28a172845f680f71b32aaebd2c3b866823c603e3146f43addce4580a82a0907c6cf9a4a7fd", 0x6d}], 0x7, &(0x7f0000001140)=[@rights={{0x30, 0x1, 0x1, [0xffffffffffffffff, r4, r1, r0, r0, 0xffffffffffffffff, r2, 0xffffffffffffffff, r1]}}, @rights={{0x2c, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, r4, 0xffffffffffffffff, 0xffffffffffffffff]}}, @cred={{0x18, 0x1, 0x2, {0xffffffffffffffff, 0x0, r5}}}, @rights={{0x10, 0x1, 0x1, [r0]}}, @cred={{0x18, 0x1, 0x2, {0x0, 0x0, r5}}}], 0x9c, 0x20000000}, {&(0x7f0000001200)=@file={0x0, './file1\x00'}, 0x6e, &(0x7f00000013c0)=[{&(0x7f0000001280)="360bc21ec06264048c2e030801414156fd49e3eb9a6bd2a94053087d5d97b52c30faf4cbcd0584aff09517f92d07a7888368cb9fe1b79acfc6", 0x39}, {&(0x7f00000012c0)="26d7b7d0a7decfd3913619fb5121f9255f38d4575a12134dc22c127949f3b57b2e4a3c75cb956f5ac450b5ef90e65b9bceb95ee0f6b279c90a6d42a54d9d681024fc8725c221ae8677f84a8b9049ff89967c2cf121dc9f92827962b74135c35318309f4f4dfde0b5b5778eac5b93f52d75527cf70c2a6500e120e4e428a340ea4d03e731713fbf314d0d3bc4aecee4328ea6c89fa066502eef37883d5bf9b1f9d2f5453c1d2e4fb1534986976b2d57d39ab2c5beafe5ab761b706213af13d508b20ee3edf53d2df2d817ffd2c73573b2761a9fe92f4817390f0c2dcdc8d9c1f856e8fe447a874bb09a0f4747", 0xec}], 0x2, 0x0, 0x0, 0x40}, {&(0x7f0000001400)=@abs={0xca6c6d0e504d6f54, 0x0, 0x4e20}, 0x6e, &(0x7f0000003780)=[{&(0x7f0000001480)="14e6d073a4d602147ea2385d1208313d4bcd0f6e9913ccf702a6e39ce461318b516a0493dce900458d6e4aa7c3de5e18068bae7df4e43a8fd1ebfe5bd26c12f8221e005659fa92f911bbece8148067b17de110556b56f08469ccef7b0cf4c9ff1ebd5420a67381a31575ebd977eb3d013a62871a8cf7182436167cd51becc20fb743ecbf306ef554eb6527e0d6affc1423cba124d56adbf72c83296e36f2b5a4add76b2c8a6ce25a0f1b0dfcd22701c908c2181d4c3d368e677e88f76aeb29010d4c32eacc7a2a5b", 0xc8}, {&(0x7f0000001580)="016871725b24e2dacdfa8373b33b095b288932d454e0632d8e2df6655851d56e05ab9d474d9f8d3c03d6f1cec87edd69f62fb729039b2652d928605e718b2d2bffad3ef4646bcef3e408770bdc4db4adfa7cd26a9642d8fc12769a540d4e00efc6877ecd043492bd0d113981b571bd693e7391e4e3c7f620c67622ebe1185454cafbb324adc7e97d604280d24ac9b999bcbca5b680adcf03097acb8fc4dbc3de03c8cf21db7967b1099cd5bdbd18e10b5a343c3cf3f0ca49e2b65bb077052dc9f69e265a05", 0xc5}, {&(0x7f0000001680)="54d0556a7d79ae87d5674da7469fb414a0ad6ce708e84d60c901b86c175bef0d2e7fa29d81a95d19eeb1879e8f7664550d4bc190b28673a8eef84b0c0ee636f072d41a7d118d8c758532b67ead1fd3b0be00882a3c52dc6fac56796a5d913c5cde8700ecab956e04beb6ffe6cde50aba94d671a394862dc3146d4a278c164b3a28e2db6e425e806a58f28556f436320467977e91abc67cfdc4348bdf98640bb2be0acc835352c8873a77218e144bf6c0d45a17b731cf69170a18529fda83d58a84c24f7bb6fd9648ea38057c3893985c2136459451ec0216acc4eee3024ebc3d", 0x10e}, {&(0x7f0000001780)="c3916bbe60c364fa5b72467efb8df39d1a4a2c6389cf399254427e9f473dc7f1ea826304899c62b11e7c23b65b3a4f624e7c3866979b55ceff2527b00980f79df150d4d8c96dbdcbb88bd5af10b4a20146b2f6953691daef88d8f2fe7fe20563e6c7c90249c4dbbb5bc351d2f521e0ca6f6977b46d4c352ecaa179c0f78629dc7f57c07c4aa69f0c1d1835fc69e74b695bfcc7a36bd6e5b8c8ef90fd2807d10d000b130f252d00964c35d9483507a20c3789782481d3c965e17bd61000feea0a31cdb421a586f709dfc0fb9199dfb57025d529c1cd33d7be6f2da187fa97c629e0360f395f46c242563a00d6afb3e421c006e32896f5282c69e707877c64994221e2069afc927e2f8526da4bceb336725411915a85e84231fe9004048b0dc774538c0895a2fc601e751c399f65be5fb2d202d6b7ce844f865ee666a0169eba22ad1835d22254410c4eacf42ab9844c8662cc14b3db913ddea631f386b9ac8a5fbe5e9402f06acd16e279a23be1363db5dbecf492f8e8eb35c010c83126c5764b47e817fe8ad499dd746a568e61a5f310e468a520454c5e0b237907432be889e8ea0559e1911d5d83483f54e60b73c961bf867fbcfd1d790ca4326cc9ba0921201ec415eeaab3894813004e87cf0086154684a924cdfb00626670fc587020e0a21cbb432e7f8432be8c55385c1bd00869bd6763d24dcd91eace6c853afe918f52631f874e81887b7f20a01a0bee13e22bede75f035f311e5dc7e9318c0ad980bac6a7da1995fc0ad0464986c4d8e6257fa623f51fa0bb4ffff8f8f2c323280ddb68d0991fa10789ccbef27ec2c24de34f739a1a4b7ee742240e9d6931c6d7cb0f18cd8b7476408b9850ecafef14ac49a5aaebc21dd129fc22586118ea79a82728373ef07d2e5a9a09b2e3c7246c7628c4c77f4faf99dfa298029c1a5f0e5843e460b8416e8e02171797f82817f7cee9d09be19a90726b0ce65c3b3dd3c810d7af288888c881d8d8d5d0f50561ea9bd390899578823adfe154ea8cc1460ef8dc066d0601f3ca6c081d7a9c6d653fbb8a3b9fe35eaf04643dfbae1c526163ecdd0875d17688ff4d63dd20a8b4bb41a19dc6dcdc4309224bee5cfaf7b11a09d81e14f8a209048a563afe1dc37bca6cbf4aa68fef68a84c6cba79fee7d1815b9f0f05b5b55c556562fda53af8cfa1770849cee24cf92f14ca34f3b3c679fa275b900532793417defd16c74be8e838e5fd491f20aa28105db8728a2954f03bfcdc209d31b280641a3147723f92007da8d95af92a0ef6bf027ee0f9ef1884ddc22798d6ddfc527103dbecf145f6c6d4e35adfa5b1756b1cffcbe1be498b7fe1c4812da82f2fe48afb4082ef5ffe761e0906c6b29b1d1b80b06c0d98e699272c2761e61b79a1930356d4bc56be401a23eb0109c16e1227464029782b9782df994ec9a47540f9c5f0cc62e8863a02025dd42d4e9d8ef48d73a6785a08108c716fc563c1bb8af1caedbdac93015c487e801b90ee6499a1c7d7008ab9a16f1a1bebeb4c626661d31ee82c7e2b47ce3744ec516409cd6c1987a922f74dcb12c033ce32075baded6a9b7ab88f495493cdd1670e0a877eed927d9348fc5bddb17c75f31165b80fc7fbc3bd0d6789b8d4af19c921215bc6c026d2201f6a31406b315524a6b6b5c3c9c42d97c68b4a9feb6edb462aa6770b70f748d1594500fa8eae288dabae6af7733ce9e25d8b6431aaf87a948e0e27d893f14db5b4f863db5077e9efc7302efef18c9b49da4a75bf7cadbd94a24f25ae9bc9502de2f96dbff2d99f297c2ee66a79af80b64957411024c09ad66738994057db89375cd94944c178d5cb6eacdc772617bc0e4c7e4e2afe16ee5c0b99f44b50037405cd9e007d8e1e8e8c79f8965b6b9a95914308a8343ddc7f5ba77588014abf82234d6a7ad9632198a8d92f6d7e9ee3a287f786d56d74c77c746fd0cd37893173bdc5a6eb434c44e8db402c1f7f20f69707ea83fb79a12c47e1b25c0b47fe30a30f29c8e187a0a53075693127107c1c7b38831d106c383ad3cd2def849710c2f44261fa7ffe65646802a2bbacaa85a50f27ce6f0d4be377e60d8bf4ce8aa19b4d469acf168d869b347770afab588b145668e7fc6aa26d51f592c9212a590de74b9dc8bb4365d8008a7fbb3a2503aaed3a5308cfeab2b5b9ad83845bd497dfe5cc80812a168a9ba4a25e5895e0c8703b668478dec8a9433796dfd2345f789541976d7a5a1734c3254215bdf1b46dede406cbd98af5bfbda9427a8d83b9046e93e1d5bbbc343fb61d76ce254cebc9fa0fb04e8536f0b4db667f6dd528ccfc722c564800518ee6f9e53641d8318b5829531f306959a7488bcac5036b2e91b921e8ce9891a3256a93bd18322e15c36d1b1c18d08e550fb0bfe59182d972ff942a03c59e2fd0e9222d6c0805d4889d7202ab3dacd1ab4f12cc37cb760c2939993c023858242a4dbfc8586af8724303958664585bae2488ea3da0655599cb766b7f5e3576d2193cd5d3c3769b487ee5f41e3a7f1129135a2ed3b347b526334696faf3be949908c97961de475932ee5247d4c9c82a0ce65cc0831638306c806e74babdf01a7ddbb919202c275d0f01335005308b72b7f01a93e181b9e465e39f4f363e11e9c44749e7985dd2bea973ed33b4ee4a2a2dfccd59ff50f4de06be8c42a484470c27cf7ab12db132ed19b29ff3132f3aa3c74e7c8dfce84241dacc7ddc5b9d59eccf69d736671a563ffc018afd54b67911a039d762461318bfa8b6160d2d9d3f663a092e73d1578d6bb246f09e77cc8abd24043e5de9a9e178d6a2bf26a376690353bdee9b57b4120ba32ca95a90d30923db1fa3eeeb0f391d547e8b02c5297482238fab288f6e15ce87c0dcf287fb96b993e2857510a690a38bcd16f6b6127ce10ba911c0933cb5e970d2ddcb3b091a8d03a753acf047ebd24d0079f4e3211062f92273e35cb78da8df18d8fa891026d716e77e266a16bff17f3a5a403850ce532dfb56f2946b01751f8ae64a3d71921ab8aff9ffa146e056197e0bcd19806fcb55438668fda1af4d73e687fd7d0a09c0eaf078bee9c3900422782b3434aa9cb4fdde8240b23efd00338f396ac062693276c52995dfa995e4c3b606f890358b35ced5798e80bde13e0b9380101dddecc59c2bbd0ada50c563937f4263cace148a0fb3eb384220ebb9aa61fae87ac2a7d25cfb057a651db87e3a34e5ca425e6b9bc7008936ac0342683217eba71fdef903d7333f6a0d21f0ef40865506f54d9ac5897c05b3e119ac652b283f18a1f4be4e8c5bbbdef85eb3c213aa6b19ce74613fb751661b045b405e165196ff593b7cbe87820db083c10d277455835858bf86f8f053bd52e9e0b2076f652e797ab761f867882a29a6db2127a86620e13efb052b2282285adde89f12446cc6df96e1aa7bb2b2040a7f36d11bcde25b41bb6d25869ca30999ea1121a00555c93065c01c54a4187163c16c2362e3d3df70a8d24c2d79bfadc1f2b1673f58b0e9bae7db60b9319b2e78df749be7fd98d5259564e9149517dceabb0c3ede16337256920471dbd88b40e7208562c685273e5686d3af763c34316c95bc5cb480c5313980bc700cd59e63d04ac5c3eb1f492518445f44340c06a611c29b8ca3353124ccd2800bbecac8d9ee5cc2918307eb4fe38e0af7110b7bf613920a6a56eebc04fcedd7973d5e5b40522b3e7895dca2545b28cebda04e32aa9d1f999094e850470b54ee7819da76c8cef97a843ed5855be58bf7986da17948bd665bc591f985315ceb598909d3762e19a2c8bbed13bd61a901a744a49e259561c10ddfb033a6dce551e1453c6e1ac974afa902a1da6096018033144a50fb0a06cfc2e243edca1d1ce23bec05dd73bf4e07d30881bd637e033b56a6b6fdb8042c198ec10fce849553309e25d3040dd5c6ae4c1161574167a7002fb96fb95bccf3261d859655bf92feb9ef06253c65c910162aa11f6a86bdc26e0cf13fe24e2de38e2b03ce7e9f5a42f53125e15fca10816287ff20227894ef9ae70b1a72b5001c0f477c3ce401d3caa535dd540c11f55c304a89a58bd387475b59725e3ee892ec556da6abadc849743a21d295d38d9db8be1088d01a3d563d59eeb40295e029aae7a6dfaf67159efdd9494525c95d57401c191ed93c659fffd04d98415a39923375e327d23ea9bcbae47d66cb27acd61923ce345305b7fe34a4d8d9368f2c6cb35562b1710708d911b9e22c7bd27a24b0e1f0ea8aa90eab5c18e8660f8706ce9c37a6e54cee834315e4e6d2596801c28363eba98ef12ac550c15524c1770ea6c0d7d0ec17b72172cd671d845e872bbe8e604980696934303bd1051d80e5e927bbc17d69f9d05441a59dcfc523db11c60c582913006754c4efa7de45baf83bb5cc8ea166165394ce27f30cc3e3a6b39d20a1720d01632258599d54ac1a883e7d8a188cff096abd0d0703cb6647fda1b8dcb11859c6f4d3e18ed37e55de9b7a9f60544bb3be023f0928bd65ad7fca6fce866d7929e69ab6f82d08d15b51a0bf70e94b87700d9641618dd7678af69c9a8cbe72ee7804749305e588a21eb4fed149f5b2b3621ca34dc352221cf1b4ad58fa652dd9a087f762ee64085150cdf41b378b0ca782e310db6a96b5a1f13a86b6207165f294f90a4f2d44bc298b717efd638491429cdd34cd0f1731069192db4082566ada72c7774d22f3017b68d45992318d51428d6d3387511276be0afaf4a4382e8ecaff275d4f577cfb4485c3dbdf3ee09a1938e184fca7f48dccb24ac8cd0264189f02be58bb3ccf57ad7c7d3e73a7c33e270863c1f5211149a47ae87f524e94b5b9ac6a8f28807c14f50a48962a854608b4e7d7664e15d6bff960b5a9acfb01e7546cd536962ea410c8801f34ca8bdecde9b50de86e809d63e5266862961ba034d42cfbe11d88bce64ac6c8de2e87e12c189926ccbe073f075a37f1429c8a08053a847d59fa8a1d40d71f8794d603e20c0c88079c965fc7ae4e771a2a4b5b54a42b80be49b0db3ae44de24c7419e995548cc4d2a2c70911c222f4b21d55168652c596a2953301b4f00b3d21be48f3d7b91c4c79d0515edbd62df63a4e7e42137d3bcd367bdfe369fbddce9200c2416fd57417edaba1643c63ce9eeec59e63a1cc44a82a0c4a4c684ab28e29596e8dd93504b6b9dfca88a3eddb0b03a8fd01080dbe907198f231f317662460d2a70d10121eb37dbfd0cd1e4bd918e5595c37dd701bb54e2c2a3ebdb505b358f05f7889a24e6abf6a05be22b0d3ac26d3d2ea2d50dbeb193041c81ef210ffaea6e020342d34dd97b8ee248c884c92c36a970a38fa85df8ef9ad4cdbbe5d39d36ce1fcdf53b9f886bc63234883ee56e9f7635c705b35f323be94c467990aa017d99a35a7db153817ffaa3db3a26e447fe700d75b83cd903966a8ad92b4e0d6f284674bc839b5e239ef598524d1e2bfea79b9ae21b159a343dcbeb6662d27faeb5586094fbb001fde11e676980bec1754482134a661696d213cd8e52065ee3f1ceb2822f4e46821dcf71c627e6fdc446a6adbc5f7b3a7cc2e0602be8a1e55b06495da8a524b9a2cc3f8ea04a7b1216019050ad59cda114611cc174dc963d19df3c5973dd1f7a9fd3a4bd41fcb8a68507c26f2c39029a50cc27ba6d515cf2d50eb997a952954583fad0f525211c26df97f01f574d5eed99f6dc0396a3881939528eef0de12ede25d45dd0f840cd41e12e27f67e3e434bf8f2f1ceb073310030d8bb383412a5a1143dc923e3227", 0x1000}, {&(0x7f0000002780)="02adf53a6a7c08101934886724fd683722ad6ee204741df35df76de7b4ecebd2188e0f6f5003bd323b337a77c6fbf06953c17d9bba2d396040da3b8665b5a4412537b1daae7a3cbe688fed205ae5ee398b6e31b68833263c10e946eaa7435aa05d7202ae75ba7a0ab70ff9d05289adfd03b25eb37e13ff219c8064de94b71590ffe3d8ee088e18d1a8a3db53ff847fb461dc4679ab11f1fff1b33053b09801bf6292293809159fd30984983d6a7d1891a9ebb3ccf895df5eeb8d044ac2f1da30f9e89b82a2e7e4c9d89f40456a77e7cdcb260e0586f4a2575e3e8e57b6129979ee8525ce4f2ea23089701bcc3a1288770341f7f186329e7ff934da0db806bd29e05d9eb09206462a741d5a5c25384d6e1ae2ce2a679f5aa0c9085914f071902ca2bab8a7dc8953aced0b4448a61126be3efa8beec209fb43ef9e57c2fab452d961b71eedf7ef215d1ed49ea31f6f55bc1bc06d59b6c3b353be13cca0c3c9296d208c468d3a56c45fa2b896d89e881a4d24c4bdcbe72a9cb3fa11951ea134489777bd617f64d8b743fd5a36cb0cbbb201e585ec28a908adf7e28e19745fec9cd4fc8210eddb157e133bc99851b99fd81dab8ab41d1d72377ccb26e716ad46c282fc85b0ab80a0610e65ee4b8e6918a13fc6d373edce3d14a8c2c2a4e8f78bd800d2d5fcabe0983ab423758c58ba87b08d3e86c3f6c5f82cdc7c5e8fe756a262049df505881a2b3e61faa009f0dce557a8c35bf3c705ea46f439c6706c1f9231cc6f0f57a418413ec760037292968306b81a9299ca94bee69989fc8f511cc523093ea6dd6f2382982a60daa68ad3fdc2dd8de4f949480833fdef5d07c6f1dee3586910fad8d5bed4cd87467af19d2b004c1a8f6e4a01574a215710a04bc58a5a33dc34330ecea55dd7e774885c1a929e9c59f4581cac9e39f71e39e09b81b0fdd73897609ba3e5c71586d0af735a4d2528422e39992001518ffd82b34095133f3590ad3829d7977def8cc5f63a9f5a43c6355a382fbf80c1fd8ec9cce0457fa8a0229fc17c7be60ebc4c9e16a46c763f3adc194fa7bcd2972c6754c93cf0bb47121f68bfcd0c65cc3661149bf9646f340bef51c2fe1dfa892aeeffebcce1b61650915ede96afeab41e937a0cdae4065ffcf37e15de98bb989d06ef5a29a530fdf53e3f60e8f937ef6f09a4c8ca63a53c264b359763a1c101925f3be75e919027a33a2c948b508f33a71b49ba2cfe3e4cfd3b383a62772f5e9ed5e15b6b632e58a207d3364ad35503372d9c58465ceb48992d6722f618cae94c763f3682116c6bff5477e2500bcefb58ccbcdd000bd76d1897a6f0165f563986285370723d83bb46b488bb73efe561f447945a52c9af6064fa4d792054744a770021e3986fe8f2ba8396d99d0777c3be58c495d89cf8808e260ec86b8529def14a65127590094b3cbdec062abd3be5d3f500a582dbc8d9f29cd485dc3f44e1975c482a483f27f23090a0fc439e7f09ef183a8d54e482f5dd23054cacd3c39277e138620466bc0732d2ef29f676d36fbc13924714b055be3c7c023626e025136bcd998b1f6cc5a9d91c50bdb18ee023fc33682bc343e839ebff2ef4997696836d6e8cb6d9bf300abb0d92dc53a4b6f6bea14873f2ef69e77234a09dcb09b9ee8d33bded750c80f5873f0ad64579b1f549271cc90980d449f9e44dc02a593ecbebb5d383cedeee2fd729927ec5d43423c1cda3440e9e3dd0d6d522d2bdcb3907b905e8df20dc24e23c982e5b47c5b14c32ec887efd2a0d854baedcb2863c406ee2f73960168999cfb92586aa6b504d3e64c1fad96cc3b6328d6af786272c0fcae355a9413a951bfe69a0d4fd5d73bd336d5c5283caa383ed278ac9cfbcc35f7d97b8e41ad3d38c22177ce582c893e180df15f7dccf7ba6f7e44c2297e6c80e00d710dccf37d0f767dea43bcf438bac5c75806993f08fa1d1992adf4edbac180a12fb1e340c7a5938ca49ddc4a4842ab516e77b669ae01f2dfe3a2371740e3d54fdaefc711822ec5f25b195899702f929f832fb87511a48a740bcd66e78077a4354850f7b5b9aa777842578d810b98ce6e7357000820c2bec6a0f64f5f5f432d2f8a2280ea83cf6e0d8a90c6da612cf7034565d2e3c0c25bd10a3bb247312aefec271230b8f6a960dd9c2902dbe5438983a9fd4396bedf6b2675f169c09c18ad367b8326d16f07efde716256a750d8d031277b0fb0aeaf580f8b719f551d2be34348f40ebf2b3953d71be6467d733871ed55c4ebdb6cb541a4826445007f271d2cb44276d6dd8c6e2b5d1534c5422aee2f6d7b65eaa00a9ea03b22a180f876d44b8beaab1d31881d261392722ec5ab507224c8973188f6f365cd0968a976816a1964f497fcd57e851ffed6319e7487ef9678ff510216de028db28e8bb69bd1665f791be1bf417c422c3907a88fc582b7777bdb0d3be43d39276b21a124ea73cf95473eb49bfb217e7fafdebb799acebf17440151bfe112369147847d77760015da3f144d33bbc01acfc1a7a019d2407f825df3b2d8b63b38ff12683bb86fd20234e0e22a3185a1dcedbfadddb713de54ba00afd400c54c154d309e9e236ae144708fa57d0d72ecc3219261361ba031ef121bd0d3d150039e0ec4e71eba317a169160fbd64464f9b0d40cfd0b0a15430d694c51e9430240b544cac577a7863ec91379f18f1f4c6fe138bd8b0888bccbbdba00b4175555605a95d2b09e3e54cd74dc007665c47a5b187b342525f1d78e8f6b68e2b18fa734ecc9d21854ae1f6485509445e2de119d4becd17f72b4716198be56024aeaa95e85d4da3df553515623d7396f1bd4d187c9ddc5476be96795d53e1cfd9852adedf15211e6e60c6d600e89f70b22d3dea71491baa01ded97189f98f9f7995ed83634168d389f20918685b7d355a96c733db38b56aff947412e30758be0ea4af444788dd3fefd3d0a410deedc919a57d023499fedf778ff5061f499d662993ddfcebdcd5d44b86736901e06344c89da8ab0d13a37d7b303fdcb0dc08eb4929523d01026d566bda722c27988fc6323584ae21f26a7217cc880667ff09e89b22dbea47f7caa4ce025a4a01ef6ae0f63329ea947768c192e0166d6bada90ec51d289bbffaadf8935a518f4bb33bdefb98f1c056039df06eda6c90d83e2cc0a3092e8b04d871f72f07b2b55ad2499012f7c72b674a9674c5ccb0ea1d8589fc0a0a4cbd4fd96e73de0e26ad1bf3a22b4ea7dc1230df03853856a944d068789581d39b1e134d7103666b9cf0d6818a4dba6dacb2a627d2e35c864a3490e0192e0819da9ac551eacf7d4e3bb10c387a4308ce57c72b4285c9f78980bc95851e02e418b7a16c491245b7efeff663c23be13a6450dea9e8f74fd6e9ab7b6127c09e7154015b3bff392639012e5ffffeea2b8e6183700bddfc4b32dd185777c8a28c073f894503f5fc54544d7b9c4e70f960b97350a71c601edd068805783b23ac781e0c3362ca81c5daac36f8b8d681bd67730b6cc3a9ffc97ea835af8265e07959722bbcfc14a3aff46be73e592110de44b197cf2c9e8fb1217fbbd46d90fbdd8b05674dccd5c4759f58ab198837dd8df05951b0fe44031bc0d2fb860ea4d282ce44481a2bdece0188d01a4cf299daacd6c263ed70dde064692ead82b67bbce1affc6503950ff3cbb238919bac7103770aeb55325638a2a6618e14c79805ee0754c932ac37dd4d60f42abd6081a535f6d130220228eb87f31324916079f0f362b47728e8b42011bb8041df0214d7de5d1b353887dc94f16a39bbae14126758bdf9cf3ea6cbf8e91cec1f028129356491bc318542bdde01d473e44a549ae6ecd722f396703c84f23469647af107599e677415c6b841756eff400aec12a894de6c0690c5496ec6165635591a61d61af5a6ac8ff7dadeef7f15c7c1f3eea5582af879678c82172469347f23d905d65dfadcd4be2f52e2443d8608806f188436e1eb520d81ec6ff9f2fbaf1a248bd2c2dfb07d663609712f7cbf70633caa2431c59a4fdff1eef2494ed79470e162dc88c54cf4a6c3916bdfa568907ee97cb832fbff811537138230a615846fb4c2e28ca81956fba644dc16e1d3984ad30130e91dcb78a4cc4016765c8a597fc08136fa7b401c2124da8edcf2f518068c1392f5f00c65350fd34d2e7ec1e887f75f214ae19cc5c72706d20d7eb213769fbf17ae546775d4e826ae07f1468c63d341b85d21ce1187447519247c410b5310f5532f1a3dd8c91622f440af953842394c12a77f09fb681336544cc36188127172d89ebd81aeeb183cddd3ebd36a143c903c16528ab2edb8349e7742473a08295240f90972fbe0f2911c630a17333f7827ee05f3485f5e7a45956fc371a4e4c9a6f1b23b3823a923331e14df712a57a196cb350f0a4be7af1d8d81fb70574f454ff3d86650525cf49066305545c03c9771b396bfec59d2c53657854c67e880f6c266b50f765d9e15d123aa186aa3b297c59a0a95f48edb923c1df6dbc6b9070176fcf3dc2a3d8125b9e982a7a42da9a23885956cfbf8bb67660befd4e04ffc4f8f650f513565f7735ee31f6d72dcd1d620644ca4259797d7111135fa046b1dc34d31abbfd545396ff8952be0fd83ea5625cc318c35721150f2b6e5abe850e6564bb36a6578d9390ede2e3e68af808b939aa73d307ab2332dd61bdfa85fb7b569d77629ed747e495df4b990acacacb5fa31abdf607e88c29933068b624a221f5121bccd72f9d925a7e90bacc6f8cabf45a0c0e659e7c71a8302229e2aa6321e4646eef62e8971d769c642f6b67a9431541baceeb43a0f81aed6d4a4b65dc52f551ba7958212f9dabf352f4a81fb820c0bc98545668ddd94a88701a06988cde05cbbf760a4e5d37fc984856cce6f379b6adeffc13fd1d0001390988feb382317255b6b8095ed1130ceea96b205585003bf311c0d29a7300b3c5074c4f206bcb0d2060982181cca63d7ed876ec054842b9efa47acebdcf76a13fed48720f8040ffee81abd3ef16a81e49e2035a793704746789594062a400140e0ebacf07c25204aab48fba4a54e9b59dbdd0c2634c28bf6213598f7fffbc2be761935d2b7ffbcab4d60c51c39479ee58d74b6209a8d5b6c63c93cd76d61ec5bfc35ce0e4e0b3b311e3f7e6707d3e05761d50d7295bb6faf825d4081e0762a0c073e843ef183bd839514b561b01b0112cb3adebcea9c3d5744219bdee170741f55a5f2bb25e04cb3fc7cc07e893600c7c79ce01194df6e7628f0066bf0cd839d560680dc25bf7cea5db66512922dc59079c1eed4ab74ba88d9f12b6deebfd666266fe319edd846c625e72c83874646dd60fb8c2e96b853766d119f76a6f85ca0f5e46335795b86a29bed24d6285e1d23fd817b2c4ea2a648837e87b836acd2e8f08ef516f690bfd7ab88e7ca6c22b35f2300591ecd4dfc40aff7ed213b3c26ad6b10d811915185d927cdf46d3c386bbb53a2fa3255a155e2787fecfb8e4b98919b72209f7081e4a71fce2eb5b1a76fcb893a9e7d8ed99fd5d85b6ff81a3b00b773417e6c2a4a244726ab4bb5ff2ad41fc598ea30eaa67dee2f747534e972b43519569c29de09ee5f14119394b706185e2a016ceb86e526ed73e2d5a845a4ba02e965c68744b325b5651e1e90ddc83649df4dbcfb70561498974b6ba02113dc9c651d774b99dbc9d6306f733d66c97e0c9570f0de9bfae3104b6b4db9611befcdde006515fb76150f6dcdb6854a25c1e12662b2d26c15c564a15d2df5a72971adbc8c6cb44f", 0x1000}], 0x5}], 0x4, 0x44000) preadv(r3, &(0x7f0000000280), 0x18, 0xd9f, 0x0) io_uring_enter(r3, 0x2b96, 0x8e50, 0x0, &(0x7f0000000280)={[0x6, 0x2]}, 0x8) [ 289.674421][T10121] netlink: 844 bytes leftover after parsing attributes in process `syz-executor.0'. [ 289.677554][T10122] loop2: detected capacity change from 0 to 8480 [ 289.684066][T10121] netlink: 844 bytes leftover after parsing attributes in process `syz-executor.0'. 17:49:17 executing program 1: socket$nl_generic(0x10, 0x3, 0x10) r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(0xffffffffffffffff, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r0, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r1, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r2, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 289.952819][T10131] ax25_connect(): syz-executor.3 uses autobind, please contact jreuter@yaina.de 17:49:17 executing program 0: r0 = perf_event_open(&(0x7f000001d000)={0x0, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1}, 0x0, 0xfdffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000002340)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_PEER_MEASUREMENT_START(0xffffffffffffffff, &(0x7f00000023c0)={&(0x7f0000002140), 0xc, &(0x7f0000002380)={&(0x7f0000006a40)=ANY=[@ANYBLOB, @ANYRES16, @ANYBLOB="53372bbd7000fddbdf", @ANYRES32=r1, @ANYBLOB="0c009900ff01000048000000040005802c0e0580280100801c00028008009f00060000000800a0003f00000005001801050000000a00010008021100000100000a0001000802110000000000340002800800270002000000080027000100000008002201e6030000050019010b00000008002700030000000800a00001000000440002800800a1000000000005001901070000000800260025170000050018011f00000008002201940000000500190104000000080022012d000000080027000100000014000380040002000400020004000200040002000a00010008021100000000000400038054000280080026006c090000050019010a000000050019010a0000000800a100c4f6000008002201790100000800220183000000050019010e000000080027000100000008002700020000000800a100db000000240000800a000100080211000001000014000280050018013b000000050019010e0000001c0000800a00010008021100000000000a0001000802110000010000040200800a00010008021100000100000a00010008021100000100000c0002800800270001000000dc01038004000200040002003c00018028000180050006000200000004000b0004000b0008000200000000000400090004000b0004000b0010000180050006001a00000004000a002c010180480001800500070007000000080002000400000004000a00060004000400000005000500090000000800020002000000050003000a000000050003000b0000000800020002000000200001800400080004000900050006000200000004000a0004000a0004000b0038000180050005000b0000000800020000000000050005000900000004000a000400090004000a00040001000600040002000000040009000c00018006000400ff070000280001800400010004000100050005000e000000050003000f0000000400080006000400060000002000018004000a0004000b000400010004000900050006001b00000004000a0034000180060004000700000005000700020000000500050001000000040009000800020001000000040009000400090004000a00680001802000018006000400800000000800020002000000050007003f000000040008000c000180050006000000000024000180050006001f000000050005000400000004000900080002000000000004000900140001800400010004000a000800020000000000600000800a00010008021100000100000a000100ffffffffffff000014000280080026006c09000008002201b20100000a000100080211000000000024000280050018010f000000080026006c0900000800a0000200000008002600800900004004008044000280050019010e000000080026006c0900000800a100ffffffff08009f000000000008002201190200000800a10003000000050018010c000000050018010e0000001c00028008002201a90200000800a00008000000080026006c0900000c0002800800a10000040000880303803801018034000180080002000000000006000400fd000000060004006806000004000900050007000000000004000a0005000500070000002400018005000700060000000500060019000000050007000500000006000400020000001400018004000100050003000c00000004000a001c00018004000a0004000800060004000010000005000300040000002000018004000a000500050006000000050003000a000000050005000b0000002c00018004000100050003000e000000060004007f0000000400080004000b00050005001c00000004000b00140001800500070007000000050006000000000014000180050005000c000000050006000000000038000180040008000600040007000000050005000c0000000500070008000000040009000400010005000500000000000500050006000000b00001800c0001800600040003000000140001800400080005000700f2000000040001000800018004000b0024000180050003000b0000000500030003000000050005000f0000000600040008000000240001800400010004000b0004000b00040008000400090004000a00050005000e000000180001800500030005000000050003000100000004000a0024000180050005000c00000004000100050005000100000004000a0004000b0004000a00a0000180180001800400090004000b000600040004000000040001003c000180050003000f0000000400080006000400060000000400090005000700040000000600040000000000040008000500050006000000040008001400018004000900040001000500070001000000340001800500060013000000060004000800000004000a000800020003000000050003000c000000060004000300000004000b00040002004800018014000180060004000100000004000b0004000a00240001800500050000000000050005000e000000080002000200000005000700ff0000000c0001800500060007000000b00001802400018004000a000400080004000b0008000200030000000400090004000b00040009001000018004000b0005000500030000003800018004000a000400010005000300060000000500050008000000080002000000000008000200010000000400080008000200020000003000018005000300090000000400090008000200000000000400010004000900040008000600040000000000040001000c0001800500070002000000040001802c00028008002700000000000800a100060000000800a1004000000005001801360000000800260050140000040003800a00010008021100000100000a0001000802110000000000c0030080e001038064000180100001800500050003000000040008001800018005000700c900000004000b0004000a00040009000c00018004000100040001000c0001800400080004000b002000018005000700040000000400080008000200030000000800020001000000540001800c0001800500050001000000300001800400090004000a0005000300090000000400090005000700fc00000005000300000000000400090004000a001400018004000800050005000700000004000b00800001803c0001800500050004000000040001000500050006000000050006000700000004000a00040009000500070090000000080002000300000004000b0034000180080002000100000004000800060004000500000004000100050006000000000006000400f7ff0000050006001b0000000800018004000a0004000180600001801c000180040009000400090004000900050003000c000000040008000c0001800400080004000a0008000180040001001c000180050003000b00000005000300010000000400090004000b00100001800500030006000000040009003c00018030000180050005000500000005000500000000000400010005000500020000000500030006000000050003000e000000040001800400018004000200040002004c000280050019010900000008002700030000000800a1008e690000050019010500000008009f00030000000800a000ff01000005001801380000000800a0000300000005001801140000007c0003807800018020000180060004005b00000004000b00040008000400080004000100040008001c000180080002000400000004000a00050003000b00000004000b0038000180060004006604000005000600060000000800020000000000080002000000000004000b00040009000600040006000000040008000a0001000802110000010000e8000380e40001800c0001800800020002000000180001800400090004000b0004000900050006000c0000002800018004000b0005000600190000000400090005000700800000000400090006000400080000001c0001800400080004000b0005000500070000000600040001000000240001800500030006000000060004000100000004000b0004000a0005000600080000001c00018004000b00050006000700000004000b00080002000200000024000180050007003d0000000800020002000000050005000c0000000400080004000a001400018004000b000600040009000000040001000a000100080211000001000014000280050018013400000008009f00070000005c0200804c02038004000200480001800c00018005000700070000001000018004000b0005000600060000000c00018005000300030000001c0001800800020002000000050005000c000000060004000300000004000200e800018010000180050005000000000004000900200001800400010004000b0004000b00050007000200000004000b0004000b002400018004000900060004000200000004000b00050003000b00000004000900040001003c000180050005000300000004000b0004000a00040008000400080005000500060000000600040020000000050005000d00000005000700090000002400018005000700a6000000060004000200000005000700ab000000050006001e00000010000180050006000e00000004000b00200001800400080004000b0004000100050003000f00000004000a00040008002400018020000180050005000e00000005000300060000000400090004000b00040009003400018030000180060004000700000004000900050006000c000000080002000100000005000500040000000600040004000000200001800c000180060004000eff00001000018004000100050006000b000000980001801c0001800500050006000000050006000b0000000800020000000000140001800400090004000900050005000c000000180001800500030081000000050003000f00000004000900040001803c0001800500070001000000050006001b0000000800020002000000060004000400000004000a000500060017000000050006000c00000004000b000c000180050006001e0000000c000380040002000400020058040580300000800a000100ffffffffffff00000a000100ffffffffffff00001400038004000200040002000400020004000200c80100800c000280050018012d00000024000280050019010e0000000800a1007f00000008002700020000000500190106000000440002800500180126000000050019010a00000005001801220000000800a000060000000500180128000000050019010c0000000800a000050000000500180128000000980003809400018024000180050003000a0000000800020002000000080002000000000008000200010000002c000180080002000400000004000a000400090006000400001000000500070004000000050005000b0000002c00018004000b000400080004000100050003000400000004000900060004000101000005000700ff000000140001800500060008000000050003000f0000001c00028008002700010000000800a000000000000800a000000000809c000380440001800c00018005000700000000001400018006000400805d000004000a0004000a000c0001800800020001000000140001800500050001000000080002000200000050000180100001800600040007000000040001003c00018004000100080002000400000004000100040008000800020001000000050005000f0000000500060006000000080002000200000004000900040002005c0200806401038004000200680001803000018004000100060004000100000006000400030000000600040000040000040001000500070051000000040008001400018005000700010000000800020002000000200001800500060013000000050006001f0000000400010004000a0004000a00f400018030000180050006001e0000000500070010000000040001000500070081000000050003000100000006000400020000001c000180050005000600000004000100050005000d00000004000a0008000180040001000800018004000a00440001800500070006000000060004007f000000050003000300000004000900050003000e00000004000b0004000b000800020001000000050005000000000004000b00380001800500030005000000050003000200000004000b0004000100080002000200000004000a00080002000300000006000400005000001800018004000100050005000d000000050007007f0000000c00028008002600e41600002c00028008002201340000000800a000960e00000800a000ffffffff0800a1000100000008002600760900000a000100ffffffffffff00002400028008002700020000000800a100f7ffffff080026006c090000050019010a0000000c00028008009f00020000001c0002800800a1005d0800000800a1000800000008002700010000004c000280050018012d000000080022014b020000080022018403000008002700010000000800270001000000050019010c000000080022016003000008009f000200000008002201c20200000a00010008021100000100000a000100080211000000000004030580d80200800c00028008002700010000001c00028008009f00050000000800a100010400000800a000c8080000a00203800400020004000180f80001800c00018005000700030000000c000180050005000900000010000180040009000400090004000100300001800400090004000900050005000e000000050005000200000008000200000000000800020001000000040001001000018004000800050003000b0000000c00018008000200020000000c00018005000600130000002800018004000100040008000500050001000000040008000400010004000100050005000d000000100001800500070052000000040008003c00018004000b00040001000400080004000900050005000100000004000800050006001a0000000400010005000500030000000500060005000000600001802800018005000500080000000800020000000000050005000900000004000a0008000200000000003400018006000400fbff0000050005000000000004000a0005000700f80000000500070000000000040001000500030004000000040001800400020004000200040002002c010180380001800800020002000000060004000101000004000b0005000700810000000500070004000000080002000200000008000200040000001c000180050006001000000004000800040009000500070004000000240001800800020000000000050005000b0000000400080004000a0006000400030000001c0001800400090004000b0004000a00050005000a00000004000b00200001800400090004000a00050006000d000000040009000500070008000000280001800600040006000000050007000300000004000800060004000200000006000400fb0000003800018006000400ff00000004000a00040001000400090004000a000800020003000000050007000300000004000a000500030005000000140001800400090004000a0004000a0004000b000a0001000802110000000000280000800a000100ffffffffffff00000c000280080026006c0900000a0001000802110000010000f8030580ec010080a8010380040002000400020004000200980001801c00018004000800050007008100000004000100050003000a00000014000180080002000400000005000600130000000c0001800500050005000000180001800400080004000a0004000a0005000600080000003400018004000900040001000500070000000000040009000600040007000000050003000900000004000a00050005000d0000000c000180050003000e0000000001018028000180050005000200000004000a00050005000c000000050006000c00000004000b00040008001c0001800800020000000000040001000400010004000b000400080020000180050005000f000000050005000200000004000b0005000600130000000800018004000900240001800800020001000000050006001e0000000600040000fe00000500030008000000200001800500030006000000060004000180000008000200000000000400080018000180040009000400010004000800050005000300000034000180040001000500070008000000050007000900000006000400f7ff0000050003000e0000000400080005000600110000000a000100ffffffffffff00003400028008009f000700000008009f00030000000800a100090000000800a1002d0c000008002201f70100000800a00003000000500000800a000100ffffffffffff00000a00010008021100000000003400028008009f00040000000800a100ff7f0000050018010800000008002700030000000800a000000001000800a0004f0000000c0000800800038004000200100000800a000100ffffffffffff00009c0000800a000100ffffffffffff00000a000100080211000000000014000280050018013c00000008009f00060000004c000280080027000300000008002600b41400000800a00002000000080027000000000005001801140000000800260090150000080022015503000008002201cf01000008009f000000000014000280050018011600000008009f00020000000a00010008021100000100004c0000803c000280080022019401000008009f000600000008009f00060000000800a100aff900000800a00003000000080026006c0900000800a000000100000a0001000802110000010000280000800a000100ffffffffffff00000a000100ffffffffffff00000c0002800800a100080000007c0000800a0001000802110000010000640003803800018034000180050007000100000008000200000000000500070006000000040009000800020004000000050006000b00000004000100200001801c0001800400010004000b00040009000400090005000500ef00000004000200040002000800038004000200100000800a000100ffffffffffff0000540605805000008034000280050019010800000008009f00020000000500190109000000050019010a00000008002201450000000800a100080000000a00010008021100000000000a000100ffffffffffff000020000080140002800800a1000500000008002700030000000800038004000200d00200800a000100ffffffffffff0000100103801c00018018000180050006001800000004000b000500060013000000f0000180140001800600040001000000050005000c00000028000180040001000500060012000000060004005a880000050005000f0000000500030005000000240001800500030001000000050007000100000006000400af000000040008000400090038000180050005000700000004000a00050005000100000005000600020000000500050001000000050006000900000006000400010000002400018004000a000400080005000500000000000600040001000000050003000e00000030000180050005000b000000080002000200000004000800040001000400080004000a00060004000700000004000900a4010380d000018010000180050006000f000000040009001800018004000a000400010004000a00050006000f00000024000180040009000400010005000300090000000800020004000000040001000400080038000180050007000700000004000a000400010004000a000400080004000b000400080004000a00050003000d000000050007000b0000001c00018004000b00050003000e00000004000a00060004000600000010000180050003000200000004000b000c00018005000300060000001000018004000100060004001f000000c40001800c00018004000900040001003000018006000400ff070000050005000500000004000100050007000000000004000a00050003000c00000004000b002000018005000500080000000400080008000200020000000600040000000000040001803000018004000800050003000c000000050005000e00000008000200000000000500050002000000080002000200000030000180050005000e0000000600040008000000050003000a00000004000100050006001f00000005000700ad0000000400020004000200040002000a0001000802110000010000b80200800a0001000802110000010000440002800800a00002000000080027000100000008002700030000000800a000050000000800a000080000000800a1001ad4094e080022011902000005001901060000000a00010008021100000000005802038024010180200001800400010004000b0004000b00050003000a0000000400090004000900200001800400090004000800060004000100000004000a000400080004000800280001800400080005000500050000000500050000000000060004009d04000004000a0004000900340001800400080004000b000500060005000000050003000d000000050005000b000000050003000d00000004000b00040001001000018004000a000400080004000a0014000180040008000600040020000000040008002000018004000100050006000c0000000500060015000000050003000700000018000180050006000a000000050005000f000000040001001800018004000a00040001000500050004000000040008001000018004000a000500070006000000dc00018038000180040001000500070001000000050005000c0000000500070040000000050003000f000000050003000d000000060004000500000038000180040008000600040003000000050007002000000005000300080000000500030003000000080002000300000005000500030000002c00018005000700e8000000040008000500030007000000040009000600040007000000050005000c0000001400018004000b000500060008000000040001002800018004000a0006000400850000000400010005000700680000000400080005000600010000004c000180080001800400010040000180050005000a000000040009000500030009000000050007000800000005000700800000000500060015000000050007003f00000006000400060000000400020004000200240000800a00010008021100000000000a000100080211000000000008000380040002003400008024000280080022018c01000008009f0004000000080026006c09000008002201940000000a0001000802110000000000f4100580640200800a000100ffffffffffff0000340203800400020004000200200001801c00018004000b00050003000800000004000b0005000600110000004c0001802000018004000b00060004000900000004000800040008000400080004000a00280001800400010004000b00050007003f00000005000500040000000400010005000700080000008c000180200001800800020001000000040009000400080004000900050005000b0000002800018004000100050003000400000004000800080002000100000004000a00050005000d000000240001800400090004000900060004000300000004000a00080002000000000004000a000c000180050003000c0000001000018004000900050003000e000000300101801000018004000b0005000500040000002000018004000b000800020002000000080002000200000008000200000000003c000180050005000c0000000500030003000000050003000500000005000700090000000500060018000000050007000700000005000300060000000c0001800400010004000b00340001800400080004000a0004000a0004000b0004000a00040001000500060001000000050006000600000004000800040001001800018008000200040000000800020002000000040001001000018004000b0004000100040008000c000180060004000000000020000180050005000100000004000100060004000200000005000700a50000002c000180050003000500000004000b000800020000000000050003000000000004000a00050006000300000014000280050018010d00000005001801110000000c00038004000200040002000402008028010380800001800c00018005000500050000002c00018006000400ff0700000600040080000000080002000200000004000a00050003000c00000004000b000c000180050003000e000000380001800400010008000200020000000400010004000a00060004000008000004000100050007008300000005000600070000000400010004000200040001800400020004000200900001803800018006000400000200000400090004000a000600040002000000050005000800000004000a0005000500040000000500070005000000080001800400010020000180040009000800020002000000080002000300000004000a00040001002c00018004000800080002000200000006000400c1ff0000050007007000000004000a000800020001000000040002002c0002800800a100faffffff08002700010000000800a000fc0b000008009f000200000008002201a40000000c00028008002600b41400000a000100080211000000000008000380040002004c000280050019010f000000080022010e010000050018011400000005001901040000000800a1000100010008002201960300000800a10005000000050019010d0000000800a000f8ffffff0a00010008021100000000003400028005001901070000000500190104000000080027000300000008009f00010000000500190109000000080026001c16000004020080000203800400018004000200380001801c0001800400080004000a000500060012000000050003000e0000000800018004000100100001800600040000100000040001003800018034000180040008000500050009000000080002000200000004000800050005000600000004000900040001000500060007000000800001800c000180050007000000000034000180050006001800000005000700010000000800020002000000040001000500050007000000080002000000000004000b003c000180040008000400010005000500080000000800020000000000050007001f00000004000a00040009000400090004000b00050007000500000004000200fc0001801c000180050006000a0000000800020000000000050006000700000010000180050006000c000000040008002c0001800400010004000b0005000700740000000500030006000000050005000e000000060004004400000020000180050005000800000005000700dd000000050007000800000004000a000c00018004000800040001001400018005000500040000000800020004000000300001800500050008000000050003000000000004000a000400080004000900050003000000000004000b0004000b00100001800500060000000000040008002000018004000b00080002000000000005000700420000000800020004000000040002004c0700800a000100ffffffffffff000024000280050018013c0000000800270002000000080026006c09000008002600711600001c0002800800220120030000080026006c09000005001801390000001c0002800800a00000c0801908009f000500000008002201ac020000000203803800018014000180050007001f00000005000500030000002000018004000b0004000a00050003000900000004000800050003000e0000009000018024000180050007000800000005000500020000000800020000000000050007000100000014000180050007000300000004000900040008003800018004000100060004000200000004000b0004000900040008000400010004000a00060004000002000005000700fa000000040009001c0001800400010004000b0004000b0004000100050006000a0000000400020004000200040002009c00018040000180050007003f00000004000100050003000000000004000900040009000500070002000000050007000600000005000700090000000600040081000000100001800400080005000600050000001c000180050006000f0000000800020004000000050003000e0000002c00018004000b00050003000500000004000900040009000500050006000000040008000500050006000000880001800c000180050005000f000000140001800400080004000a00040001000400010014000180050003000300000005000700800000001c00018004000800050005000e000000050005000b00000004000800340001800600040007000000050003000f0000000500070008000000050003000700000004000100040009000400010004000100040002000a000100ffffffffffff0000b400038004000200a80001801c0001800400010004000b00080002000300000005000600070000000c00018004000900040001004400018004000a00050006000c00000006000400ffff00000500070000000000050006001f0000000500050003000000050006000000000004000900050003000e00000038000180080002005064bad7060004000200000005000600010000000400090004000100080002000100000005000700200000000400010004000200d002038004000200f400018010000180050003000200000004000a004400018004000b0006000400641500000500030009000000050007001f000000050006001c0000000400080004000a000500060013000000050006001200000004000900280001800500050007000000050005000f000000050003000a0000000800020001000000040009002c000180080002000000000006000400feff00000800020004000000080002000400000008000200000000001000018006000400030000000400080038000180040008000600040004000000050003000300000004000b00040009000800020004000000050005000700000004000900040008000400020004000200ac00018020000180050003000800000005000700070000000400010005000600040000003800018004000800050007000100000008000200020000000600040004000000080002000000000005000700010000000500060009000000140001800800020001000000050005000600000014000180040009000400010004000a00040008001c00018004000b000400010005000700df00000005000600060000000c0001800500060010000000c40001802c000180040001000600040007000000080002000100000004000900050007000200000004000a00040009003c000180060004000100000004000a00050005000300000004000a00060004007503000004000100050003000500000004000800050003000200000024000180050007000400000004000b0004000900050006000a00000005000300060000003400018004000b00050006000c000000050003000f00000004000b00080002000300000004000a0004000a00050003000600000004000200580001801000018006000400080000000400080030000180050006000f0000000400080004000100050007000800000004000b0004000900080002000000000004000900140001800400080005000700c100000004000b002c000280050019010b0000000500190108000000050018012500000008009f00070000000800260011170000240103800400020000010180280001800500050000000000040008000500070001000000050005000700000008000200040000000c000180060004000008000008000180040001001c000180050006001300000005000500060000000600040000100000300001800800020000000000050007007f000000040009000400090004000100050007000100000008000200000000002000018004000a000500070005000000080002000200000008000200020000003800018004000b0008000200030000000500070004000000040001000400090004000a00040009000400010004000800050005000d0000001c00018005000600020000000600040006000000050005000c0000001c000180180001800800020000000000080002000300000004000b00a4020080b4000380ac0001801400018004000900050003000800000004000900140001800400090005000600080000000400010020000180040008000400010004000a0004000b0004000a0005000600030000002000018004000900050007007700000008000200030000000500050009000000140001800800020083b3a86306000400080000000c00018004000b00040009002000018004000100080002000200000008000200030000000500070005000000040002001c010380b8000180300001800400010004000900050003000300000004000100080002000100000005000700010000000400090004000100180001800500050009000000050006001c00000004000b000c00018006000400010000001000018004000b00080002000400000024000180050003000600000005000700200000000500070008000000050003000f00000018000180050003000d00000006000400ff0000000400080014000180050007000300000005000300030000006000018010000180050003000100000004000a002800018004000b0004000b00050005000a000000040001000400090004000b00050006001c00000024000180050003000e0000000500030005000000050006000300000005000700ff000000d000038028000180240001800400090006000400faff00000800020000000000040009000800020000000000a000018044000180050003000400000004000800050007007f0000000500070002000000080002000400000006000400010400000500070040000000050005000c00000004000a000c0001800400080004000b001400018004000100060004000500000004000b0008000180040008003000018004000a0006000400b8030000060004000700000004000b0004000b00050005000e00000004000a0004000a00040002009400008004000380040003800a00010008021100000000000c000280050019010c000000340003802c0001800c00018006000400040000001c00018005000600100000000400080004000100050006000a000000040002003c000280080026006c09000008002201e301000008009f0004000000050019010b00000008002600000000000800a100010100000800a000030000007c080580440000800a000100ffffffffffff0000340002800800a1000180000005001901080000000800a000ff070000080027000000000005001901080000000800a100ff010000c8060080ec020380a40001800c00018008000200020000003800018004000100080002000000000004000800060004000300000005000700060000000400080004000100050005000700000004000b0018000180060004003f0000000500070008000000040009000c000180050003000b0000002800018004000a000400090004000100050005000800000004000b00050005000800000004000a001000018004000b0004000b0004000900100001800c0001800500060000000000c00001801c00018004000b000500070081000000080002000400000004000b00100001800800020002000000040001001c00018008000200000000000400010004000900050006000500000024000180050005000c0000000500070000000000080002000100000004000800040001001800018004000a00080002000000000008000200030000001800018004000a000400010005000500020000000400010020000180050006001f000000050003000a00000004000b000500060013000000380001803400018004000a0006000400070000000400080004000a000400010004000800050006001e000000050003000900000004000a00080101801000018004000b00050006001a00000014000180080002000200000008000200030000000c0001800500050001000000340001800500030009000000060004000500000004000800040008000400010008000200030000000400090004000a00040008003c000180080002000400000004000800040001000400080005000500000000000500070002000000050006000300000004000a000800020001000000400001800500070006000000050003000c00000004000a00050005000f000000050005000100000004000b0004000100050005000b00000005000700260000002400018005000500070000000600040000000000050006001a0000000400080004000800340001801400018004000b000400080005000600160000001c000180060004000200000004000a00080002000000000004000b000a00010008021100000100000c00028008009f0000000000c0030380c00001804400018004000a00040009000400080005000700080000000500070000000000050006000d0000000800020002000000050007002000000004000b000500050004000000040001802800018005000700010000000600040080000000050003000700000004000900080002000000000010000180050003000f000000040009003c000180060004000002000006000400800000000500060017000000050005000200000004000b0004000a00040009000400080005000300060000004001018034000180050005000300000004000800050006000b00000004000b000500050008000000050005000e0000000400080004000900180001800500030004000000050007000100000004000b00400001800400080004000100050006001100000004000900050006001400000004000a0004000b0005000500010000000500070081000000080002000300000040000180040008000800020004000000040001000600040007000000050007000700000004000900050007003f0000000500030000000000060004003f0000000c0001800400010004000b000c00018006000400feff00000c0001800400010004000b00380001800500030002000000050003000a00000005000700ff000000040008000500030004000000040009000500070005000000040009001400018004000a0004000a00050005000b00000004000200840001800c00018005000700ff0000001000018008000200000000000400080030000180050007000400000004000a0005000700fd0000000600040001000000050006001d000000050006001d0000001c000180050005000d00000006000400020000000400090004000800180001800400010005000700ff000000080002000c00000004000200f800018024000180050005000a0000000400080004000a0008000200030000000400010004000a001c00018004000a0008000200030000000400090006000400070000000c0001800500060016000000340001800600040002000000050005000500000006000400980000000800020002000000050005000400000005000600030000000800018004000a0028000180050005000600000004000a000500070001000000050003000100000005000300070000001400018004000b00050007009300000004000a003000018004000a00050003000500000005000300060000000500070003000000050003000c0000000500050000000000340001800c0001800800020004000000040001802000018004000b00080002000300000004000a00060004000400000004000b0004000200500100800a0001000802110000000000b800038004000200ac0001801c000180050005000d000000050006001e00000005000700030000002400018005000700ff00000004000b0004000a0005000300030000000600040078d100000800018004000a0030000180040009000800020004000000050003000100000004000900050005000b00000004000b00050007007f00000014000180050006001a00000006000400090000001c000180050005000f00000004000900060004002000000004000b00040002004000038038000180340001800500050002000000050003000f0000000500030005000000050006001300000005000700e50000000500050009000000040002000a00010008021100000000000a00010008021100000100002400028008002600b815000008002700010000000800a0000180ffff080022017e0300000a000100ffffffffffff00001c0000800a00010008021100000000000a000100ffffffffffff000010070580c80000803c000280050018012e0000000800a100030000000500190108000000080027000200000005001801190000000800a1004000000008002201590200002400028005001801210000000800270000000000080022013403000005001801170000001c0002800800a1000700000008009f0005000000050019010600000034000280050019010d0000000800a000010001000800a100000000000800a000250000000800270003000000080027000300000014000280080022018600000008002700010000009c0100801400028008002201670300000800a000050000000a0001000802110000010000040002800a00010008021100000000000a00010008021100000100005c01038004000200040002000400020004000200f0000180280001800500030000000000050006001900000005000500060000000800020003000000040008003c00018008000200020000000500060017000000050007000300000004000b000800020004000000050005000900000006000400ee00000004000a000800018004000a00380001800500060004000000050003000f00000004000800080002000c00000005000700740000000500050004000000050005000d000000100001800400090004000800040009001c0001800500070004000000060004000500000006000400090000001c000180050006001400000004000800050006000300000004000900580001800c0001800500070009000000480001800600040007000000040001000800020005000000050006000300000006000400070000000500030000000000080002000000000004000b0004000a000500060008000000a4020080c8010380340001800c000180050005000500000024000180050005000200000004000800050005000a000000080002000400000004000100b40001801400018004000a000400090004000a0004000a0024000180040001000400090004000b00040009000800020003000000050003000e000000380001800800020003000000050007003c00000004000800080002000400000004000b000500060010000000050003000f000000040009002c000180050007003f00000004000b0004000b00050005000600000004000b0004000b00050003000e0000001400018005000300010000000800020002000000340001802400018004000b000400090005000700000000000400090004000b0005000500040000000c000180050006001b000000a40001800800018004000900100001800400090005000700020000000c000180050007000200000044000180050005000600000005000700400000000500050004000000050003000d00000008000200040000000800020003000000080002000000000008000200010000000c00018005000300060000002c00018004000800050003000400000005000300050000000400090008000200010000000500030008000000040001805400028008002201a1000000080026006c090000080026003c1400000800a00008000000080026006c0900000800260099160000050019010b00000008002700030000000500190107000000080026006c0900000a000100ffffffffffff00000a00010008021100000000000a000100080211000001000054000280080026006c09000008002700010000000800a100040000000800270003000000080022015f01000008009f000300000008009f00000000000500190106000000050018012e000000050019010b0000000a0001000802110000010000d40100800a000100080211000001000094010380bc00018028000180050006000b00000004000b0004000800060004000104000004000b00060004000100000018000180060004000200000004000a00050003000d00000028000180040001000500030008000000080002000300000005000700f3000000050006001f000000280001800600040002000000050005000600000005000700f7000000050006001f00000004000100280001800400010006000400000000000500070001000000040001"], 0x4080}, 0x1, 0x0, 0x0, 0x24008001}, 0x0) sendmsg$NL80211_CMD_SET_BSS(0xffffffffffffffff, &(0x7f0000000340)={&(0x7f0000000240)={0x10, 0x0, 0x0, 0x10000000}, 0xc, &(0x7f0000000300)={&(0x7f0000000380)=ANY=[@ANYBLOB='L\x00\x00\x00', @ANYRES16=0x0, @ANYBLOB="000125bd7000fcdbdf251900000008000300", @ANYRES32=0x0, @ANYBLOB="05001c005600000005001c00ff0000000500a3000100000005001e0040001a005092deaef2ac397a9b750500a200080000001227a31839e262aadceb4ab6f08f1ce5c6a046ebf7aa2ce44bd17d527ec44b4feab176f622f59280f2365941c674070000003c3fb33f0ee54587e22aed792e2d63b1d810208f61042edbfbe797c1fbed9ff970baa623df85cad99d744388fb952c46d8ac9e6159925655ab6a1585f2713bcac5ebf1ec99dbcbd83acacd6b71d1523c1edf2f39c7ba"], 0x4c}, 0x1, 0x0, 0x0, 0x4000004}, 0x4040) getsockname$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @local}, &(0x7f00000000c0)=0x14) syz_open_dev$vcsu(&(0x7f0000000040), 0x2, 0x8000) fallocate(r0, 0x2, 0xffffffff, 0x3) sendmsg$NBD_CMD_DISCONNECT(0xffffffffffffffff, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x4000010) ioctl$F2FS_IOC_RESERVE_COMPRESS_BLOCKS(0xffffffffffffffff, 0x8008f513, &(0x7f0000000000)) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000008c0)=@newlink={0x58, 0x10, 0x401, 0x400000, 0x25dfdbfe, {0x0, 0x0, 0x0, 0x0, 0x42df58543c8388f3}, [@IFLA_LINKINFO={0x28, 0x12, 0x0, 0x1, @sit={{0x8}, {0x1c, 0x2, 0x0, 0x1, [@IFLA_IPTUN_LOCAL={0x8, 0x2, @loopback}, @IFLA_IPTUN_FLAGS={0x6, 0x8, 0x19}, @IFLA_IPTUN_PMTUDISC={0x5}]}}}, @IFLA_MTU={0x8, 0x4, 0x10001}, @IFLA_MASTER={0x8}]}, 0x58}, 0x1, 0x0, 0x0, 0x400c844}, 0x20000004) [ 290.039999][T10131] ax25_connect(): syz-executor.3 uses autobind, please contact jreuter@yaina.de [ 290.086583][T10122] loop2: detected capacity change from 0 to 8480 [ 290.104990][T10138] ax25_connect(): syz-executor.3 uses autobind, please contact jreuter@yaina.de [ 290.199237][T10122] REISERFS warning (device loop2): super-6502 reiserfs_getopt: unknown mount option "18446744073709551615”Ô/¾³µÅûÆþ [ 290.199237][T10122] UÀ2ò<ܳ+šÿßv¥×nkMÎ@^Éîbß|k–È2ˆœqììÀê]svÁ%7Ìøìkþ3øÍÎ<„ÈlÉ•ç0¹‰d¸b÷;r§¡…KŽ}r.žpý}¤‘¢”Ž ¦;Rœ I#n‡ë [ 290.199237][T10122] ß3‚SŸ#ààuxæ$è^¶ù.îP£Õ¿ôÝƃX–¡=¨bp‰žCÜI]IsÃOãÔ§œL" [ 290.260131][T10147] ax25_connect(): syz-executor.3 uses autobind, please contact jreuter@yaina.de 17:49:18 executing program 3: perf_event_open(&(0x7f0000000040)={0x3, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x400, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={&(0x7f0000000000), 0x3}, 0xc08, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0, 0x0, 0x0, 0x20000000000}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat$kvm(0xffffff9c, &(0x7f0000000280), 0x2000, 0x0) r0 = socket(0x18, 0x0, 0x0) close(r0) r1 = socket$can_j1939(0x1d, 0x2, 0x7) r2 = socket$inet(0x2, 0x4000000000000001, 0x0) ioctl$ifreq_SIOCGIFINDEX_vcan(r2, 0x8933, &(0x7f0000000300)={'vcan0\x00', 0x0}) bind$can_j1939(r1, &(0x7f0000000e40)={0x1d, r3}, 0x18) connect$can_j1939(r0, &(0x7f00000000c0)={0x1d, r3}, 0x18) sendmmsg$alg(r0, &(0x7f0000000140)=[{0x0, 0x0, &(0x7f0000000600)=[{&(0x7f0000000180)="e86762e792b0a569c9c829f439db21219a77caff72d54d1764821d02aa310e8546bc7bf558dedae429390378e15add3bae5fb665cfdde46b84819da9ee9cc36980af43fc8014302cfb1917abcb9b87961c8a6e73ce596e0d49e6b6907ea07d132c5786708cb3453c0949480d7efde54cb4465d64db77dc3639248e15b1fa14dc6539d0b53b64f839091f8a421af81c3bd3fa187a08448fe695ecd57fcbe8873c6dff1a0800"/178, 0xb2}, {0x0}, {&(0x7f0000000100)="bbaecb8eee68", 0x6}, {&(0x7f0000000340)="a1529ce03018c91215fe0e5571109ce0e34c0308c8fe73262c94f3cb4b3cc1f845d67df65f7b8012b2208e7518f50ba16588e9d32903d449fda2d0130fd691d107061f24ae2c9a55a4cd2d856bdb7eb31127573672fce6ed831c46d5a9e99d6eabf5bf1bb54def317a84b2d2a73cb3ac44fc6f42d67239569d21d860282a49379c3844cd7c8196ee101883ebc747dac3fdaa4ba57aa229dd0a9991c5c4d358a4f2d1c414abad65a9fadb", 0xaa}, {&(0x7f0000000400)="f54ee9acac4f35d9ec3e84904bdf13dcb875660926b2d067f6d4e0fea4bfb3a629ab0a891d9374544e0334ae61c220f2e4d5968304bd5fe4390e8a4bf3c14842fd7ef448f2a468570523c99a490fcdf2", 0x50}, {&(0x7f0000000480)="ba2c8b3e0b62c3a1e26843411feba1afd4d7a3f1a237f89d1e75e22a3d1fe95302686f7e24477e6f7ef8df69c59882b0c07842f6d1a6cc45879f181c510aaac67d7f4c3da33c4827245e725108c57081d04e349f250434315bd3dea5e8242562bd38a717461a98e868c83cb5242851fb094fc5d51f4610eae41aa43511793daeeddaf49042b1fa9e3fa54d46ccfb205e6ed7dad31ae82a6e4704fbf2ceba60382f285ea6be475487f1ca8a81478e202680dbb983ae7ad3f5e16e1a65f199b51437647c9bf8237174e74c982407", 0xcd}, {&(0x7f0000000240)="3d0a611c86f775755e11d0162c16", 0xe}, {&(0x7f0000000580)="c527dcbc62cc011976c02f6ca62a33fb5e7b99961e5d9d9ffdedd624a7364faa84579da16124ad0cb5422b08c5d96b47c2701b25a14e9820ae51cb7d8cebbbb818826eeea0e17daffc4cd438269064", 0x4f}, {&(0x7f0000000e80)="9633b1ee69d796b38d819787f3d9a2063bd4ad42274befaae0f9d7e4665dceab5468eacdd0e365c0c169526f12d36c2f64b7ee16493069284fb5850508afc0406f15b940c57d5c9388f2e52197d2874624519f59c20a7290bd2a1d1ba237d6ad1e9317faf7410fb95c1d5dcc27658dfc89ffb53dce3c748a66cd4d6d725f865fd1a3a434d8a338a0336ae4fdcb1c3ff76ed19eab4d799441c1a2a446fa10a7a7530d32790e95c0adc14e51dfe84682d7de9e1ce6868de1fd985d06d9b3099a6ba17fe63fd79aab3b8403c54b1d05c0732746fbc758798e403dcb7390e2fcfaba3089dfe5b5f9ebc81fe47e2ce392f993d712fa824c3ddf61f7f4299674d94b8cd7bcf1d58fde711c3fb80ebd13694e4529d0423b3a5c99dff68a008cd0e57d0a5e41f877dc715abc9dbf0fa59f92e90db7b62b8bb03927a7dfac0a0143e9775ed19caf8c34bf1294666e9fd808711e3e65b79329bebd5cc558217596e10f147e17cb1de5e062238fe2c7d5e398218314505adb3e1f55b461c1218edf9c76992d218d33e699a21a19738bf3b02baa079da5eb3c8d9da0e0eec45cbbe0071be11516b4e2888f681dc9523adf5333d40538ea0508d1b9b4e20679bc6faf4dc02155f2c6c88b2d8b89d4cb52be3f08dc674129e8d46d31a2242c831323ebcbf9be4422a119f1a9c793f331d78187c8477995b353fb54cd019210d0c7308d6aedf41619cf886fe05e0df58e0eaa88e6390027493a89f3ef069ea189e6e341b872e4e7db482ddfdb374970049ec15037553c1babbf66a68491b385c563997bec610304325804c4ab5e8af2256c97c6b95c6be64c727d2d3b310ce6cd8cff0369eeb6b47216a5fd005571e947efa9687084165053c50d4530d00c0389baac3c4066cdd87c3a28ac22851675ca1491a0b309a5fee40fa47d1603ca69cff890fb5febeb77b35f2b010bfa3368e0aa7d53b28f610666b60da49302f8dbf47056818b0a8123cb01000012c86e3f24d7889614dbbcab54a70497c7a216efa219c0309f8f3b38e5ce1dac11694258966711ef070bf02c15c04c676a3d085595d61d7c9870efcca3e5cd0aea8dae535f22a719d3ecc4d2b436b50ffdc25ba55395e85e9180a4a2a72f79618d9a4223a44e31014678e50b2dd71086596978873b772ea34d310f6da48ba51ba0705ad26a448f7c0de6f5da172dda51018bbf82e74e020b9f04e943a33e480d0bad4d4c9fdb49126db734df84b452df599a346774477c794eed8e74914c3de9b68a8daac3995f4bce2973848ea8c6d8e5492df522d516d5892b67769a949bd93c299730d86ed0986c7d2a512e4788eabf67bf8b8a55415f63c70d79d1839bee07b691daa2ca53eea30f1ed27ea7402056c62a3060b2b7250cae08de38878e9e39e1bb897a95c9ebdba72de123215cbb4cf15706b45248180ae92107e1f849dbcf88075b90752a50509da8dad2abb686becd94280fced1f5daf541b7997dc2e39a869727f812d4f13af8c2ce8b7b9dab03b2c7c537c73afdfa04bc07ad47c8b94dec5da95ebdfff7ebc6c7c2c1a0e0721c32802b9a9bd1f96901fd0eaa9f9cbbaf0f814d9191d7e945a02c327d2c313713aa4ed732821c0285519f0f27b2942e17a30a39063598b3ce8b083a33f8f2c17b6a10520d5c144cadd12ea6dd936c7236703b5261ba9bd031f511b4e918c1d70a491065bdd7723a8622329d68d444893f3151077b33beb1e37917613fdfc9cbbe14b91b944f06945571e79a0da65362a56c3cf444f2526b2fb1adedeedd04a4a1044b8b820a9128d7c71ee0404e2367b57f5a38b132a6fba76cf087bdef9ddcddc863fccbe6f7b55ad2c173dbd2abc94f2c0cb8009864e6d097a1955e9e158985b1753940b84274807530a79da927ae14450b5e2d48b74209eb31d2c8f9ae32f75641f2807b3a9868db936aa88eaaca00cb85df4d41b5a5e52ed4b1455fae997e0bb4d4e279ef6869ea42d462f78dbfd255cdf3256484627a6b5dcce73838ed978f2a46b035d9e5e4def8adc5d8139231d63d7a979cd92233a2ac45d3b7e56efdf6f223a164c63bd51a38b4f23125cd845795af4007eadff1ba02b652bab49e237498c54ef7ad0d9f72eea9ad7cc97f564bbe7cb4f39bd4bec9f57642d37f38acd3615fca5ac7dc96962848818ab641ce393524fa53a3fea602184d28c939e2ce750ae58ef39109c2b5e5c20b59dda4936fa206c61fd49bc579a53f1b1cf20190795c6d6bb8be7195d975d91dec3c4f6b403bf0cf0aa41e1bad5754c9f964739f6c4cc0b07561c22c2af212ca12d57ebbfeb2d168aacc8a3610b565165f15699794f495ae1f368f9b26e66d2f0742491f1532ade7b76a29602cb9ce50ffa29071991a05bb60627e6737730a14aff186daf5398903b02cc4abaca1ba4ea54b30c5b201d7166895432430b156e57073957d7e4383b4784d0cdc024db5e123683877d32ec7325c09703191ca2a69e6e8cc412dad9ffae6ab7b99a8ac21a1a03e45ea669ecbd9c94048a6ed6fd209af46b5a8e825c21a662bf9d1a84a11604361c08ade9ef3fc6d8d2a21d89f80226c5379131f7c86184ca47483da1724a1d4259cb84c8b3756ccb4290cac13b3e66e7f986ecd6ea15fbd23ed2342c663b62291de54b7ccbdfb60337be5398e98a3ec6019f3faa4fdf25670082e1cb2b00267efb3461efa7eb75f60275df7849138c2296496a44df42d130507263cbc440b4491c8fa954f7265292beb9f91d4567777adb7d67df8474d72a26b6998093c04c3e2e9dd1be8b9053e48959f3f164948f8704cfb4a914e19cb0d7b72f8e2f7b69309f1a0325326fda3e1b7f71fd6afac6fe23a8e45c6542cb6bf84db8f5db162a2d4805c6c735ed4d3cc905a925672fab533701b27e13567b2eb73eb5333438aee1e43ac9b0bc727e0a20014095d3d428510e6171f8edffbe64d7fe5238ff13ad60a76edace4cb7dc55a43e67184c5a16a547be876c93f2bf1a173f20122568665a62b6bcf2c39fc279aba844c8b48ed6c635f1889dbc6109e5ed97dfd87b761dccf2f8ffddf32f0836033be14debd0ae00b8223e925c09d8cfa25a003379fad2bc4b9def311b8aceb849ae09c16da314894fc0835851e7d0a484699f6e59d50dbeb4d23223da9bdae34ce965cabd44ed9429ee78fed5063d1c87ea555a52da95d6108e1efdf3f6e4f5aa8a2586511fff9dd2907d2df3ade67cd41e3b0ed26af4f0054d4a84a81b48e3526bc4e9a72615428ae7595f5770e0097783cfb4ca41746e5f8221cfef79efdf50fa39caa18b3fd839bc2f01fbf4074ed7e0261bf3f60abbe87b946e7c03b05567f10af4ef9d823a24ca49b4cdfb22941f3ec93932665dfb03ee28741a2086b39476062d42c06cc1b4f139192479f27206b62cf5deb8b4f2ded3eb77dd7349dc880b21d7da924b455e34f0b84f87f95f8e30ed6397f922f7cc4cfae207b8d52b606d2b4b61d0e2cc332874d947076d0d9a8dda700cdfcc226e8b3d5f3807fb0852d80278e888ab1f5de48c7202fff2db763ea480cae3b3d8c88bde20da5afc3f926762ae6ddefd2c2f8ac2ee40d52735781e45e9c705690c1d7be5645456409536dd3b707659e5c06d6d1ccf098f457fa9ebfc58a9e36443d06ca5e4ffab5579537b75345949d8892e143b46b17c2ab796707859361abbdef23cd15161c63212ce49dd8116cae42e64dcd809a1377fb89320e6e61b19baca4ffb818fa20b27eb99b8542058ddb984fcb66c3bda955f3de249b93a65f1b2410c7ea1f59b92841273475c00ca0719b35440dcc9678be811caea3420eb8802e2b439034d602bdd9d9df54929bdaeae6ab653a98ed4b6c2ec5a908f40a3c82b4582f01b4869198108a5df468efee3a5f223f728f9c041fde89032b08dff06559e084dc27fa11b360617678c906178e47c0af72e2a3ab31a9e99a29adca9308b48ba1ebbde791f9d70e371dfb38cdb9ea8cca0d4474c24fad50ec63b85557408aaa29f80f75ad47292591fb6b99d87778e22595b7aeb3cc7ed53b8c5d80eef2ff9074d123f4d9671d541bc06d97925a88e6f6f6ad50f48431630f958bffc0bbae96baf618014fa1ac224580a8e0c305c45a1a94ae9008214af6f697d1e61dd4c19172e765bb5ba74b0381c145ab595d9fbfd2b709df992e15c02a9634ff6c4c3023ef8bf48dd27d15002d5ef23be6dc237bcfdedc13882bffcdc572e7b900ba9a258dec7c3bf5b6a675260bdd2111099d046cc094fb25b8b87ced2c51547a3d674d60f6ef67d0a1e85e3c20a9b103a4ba3d2f8f601f79a6ab43704cb24998460a0b8f5d935e30fee8b0bb4edfcad8c0cce612ee7f2e5e61d27fecdf1ec83590dfd2409f01c5f372d5dad114f141df083669f2f1183e75dbff8c10d90719d51604019f08a35d5e77c6a54b66723a70c0b5f73ca3b530474dbe9e397a5cdeee231c60a54d3bf3b5fed79e36c79df09e1dc1846887e6b0f5a69c4be10b0a46160843ca2478e4a9455fb781ae49dc6683a567a2d426537c7d0720b30b0755a657174cc38de8ce2642bb5afa5d03a7a1adae327df06f250704cd07470e9bc0a3d693802234e8d8fcc506e59a5308777594990a668b51a92691e995cb10b9b23c3c351a65ef8b194e2367e0edf1ad39f2c51673ab5b2c8c672551be96027e2e623232d0fdcd646662dd53808a9803e88c347ff27046284bdeca5fc391b8b0591c4c8d19fbe8c67411c66eec2f7355ce0c0295b21e44d03c05e4d2fcd806d9f3e2a638e9bb461aeb29f2d63d7605dadf1fa71cd6b37382ab4e8f086060cff8310643244b56e2fa8a46291e5cf6bc34b32a97d8b0e76ee9c1fe42624fc301ef1cf43128c7ea7d77fc94f81ecc2d464da5e3be8feb685fdc269775c435f20e0bcaca598235db73f71a2de49a5b3b73789fe801e0fe43b93a39c3aa741f6a8fe802675c5c45ec73097175a9b0ef4dc8b77b83a99aed9ab6e278e11d0ffddb3125ee954a562b7c4ef00c04cddced168c56650c99dcf5ed1cf96ab37c38270a8326aca53ef63a62374fb95ee53b51ebf5f4b9153e55ada0dcaa77ee8edc2145fd80bce947cfa47f5cc364419571d4e99c96d16a26ea9285bc7dc199c97febd95cc5a9494a69e2121534370ca7cd3038f8b08bf6876175194ba63a65d09d19adc3b7237865b227661106e0dc4c77b81bafaec30ac7100b5e446228e8a8fb9e49d5dafce8ba77abf1876fafb571173d21d7f331fcfd6792badc96b67270f7abdd064e667afac2908a710339840e3b69815981463a8a0e7a727e2927617ba33994b5d0568d0b1e41a390f52deec1811255322cd9a1841de1ad735ab9671c45fcd158d2fe928cec6512129a8bbd41d491ab250d8b723bb1f8ffa2a16d8a0bee8ff81ee1fdbc23e69f82d5ea1fad6fd732850d2ac75a5470742bd25c57be2cec836087b5988fa8bf77e188b5a63df57377744e75f65183513530d005e9f52b2a3ce5a34ed20ea0404f8110d6cbe501a96ddc8695b86f60bd153e3fa19c5d5d656432b62712bd28575e437db10918b85028b2b0ab4457f757226e8f5ce5ab3b100871cc08cb1097e00cf325b873ef57942b129ea4e6fe7d6c95f0c1c37494876df043fbcbd6d734e722d8d5c7c0a848ad6eb1b7e66d0e96d076030d1c51c88c6f9c387a8a88895fd6655c6c09705180d79af5c968faed66bb05af8d52f47051114514454f210aca4c085e2470eeb285e872421efdb6bc217755c5ee3932018277c7a0b6f0d8e5f5718d6cf7bdcf522467290370bec9fe9d", 0x1000}], 0x9, &(0x7f0000000340)}], 0x1, 0x1) ioctl$BTRFS_IOC_LOGICAL_INO(r2, 0xc0389424, &(0x7f0000000680)={0x2, 0x8, '\x00', 0x0, &(0x7f00000002c0)=[0x0]}) 17:49:18 executing program 1: socket$nl_generic(0x10, 0x3, 0x10) r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(0xffffffffffffffff, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r0, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r1, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r2, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:18 executing program 2: r0 = perf_event_open(&(0x7f000025c000)={0x1, 0x80, 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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x200, 0x7, 0x0, 0x0, 0x2}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x2, 0x0, 0x0, 0x0, 0x0, 0x1, 0x80b6, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, r0, 0x0) r2 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x0, 0x11, r2, 0x0) ioctl$PERF_EVENT_IOC_PERIOD(r2, 0x40082404, &(0x7f0000000000)=0xfc) r3 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r3, 0x0) preadv(r3, &(0x7f0000000280), 0x18, 0xd9f, 0x0) ioctl$PERF_EVENT_IOC_SET_OUTPUT(r0, 0x2405, r3) ioctl$PERF_EVENT_IOC_SET_OUTPUT(r1, 0x2405, r2) syz_open_procfs(0x0, &(0x7f00000001c0)='mounts\x00') 17:49:18 executing program 0: socketpair$nbd(0x1, 0x1, 0x0, &(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}) r1 = mmap$IORING_OFF_CQ_RING(&(0x7f0000ffc000/0x1000)=nil, 0x1000, 0x3000001, 0x4000010, 0xffffffffffffffff, 0x8000000) r2 = io_uring_register$IORING_REGISTER_PERSONALITY(0xffffffffffffffff, 0x9, 0x0, 0x0) r3 = openat(0xffffffffffffffff, &(0x7f0000000180)='./file0\x00', 0x3c9c41, 0x3e) r4 = io_uring_register$IORING_REGISTER_PERSONALITY(r3, 0x9, 0x0, 0x0) io_uring_register$IORING_UNREGISTER_PERSONALITY(r3, 0xa, 0x0, r4) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r3, 0x0) preadv(r3, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_io_uring_submit(r1, 0x0, &(0x7f0000000140)=@IORING_OP_READ=@pass_buffer={0x16, 0x2, 0x2004, @fd_index=0x3, 0x5, &(0x7f0000000080)=""/139, 0x8b, 0x8, 0x1, {0x0, r2}}, 0x48dc) sendfile64(r0, 0xffffffffffffffff, &(0x7f0000000040)=0x53, 0x200) 17:49:19 executing program 1: socket$nl_generic(0x10, 0x3, 0x10) r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(0xffffffffffffffff, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r0, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r1, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r2, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:19 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, 0x2800004, 0x12, r1, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x3000003, 0x800000000009032, 0xffffffffffffffff, 0x0) r2 = socket$netlink(0x10, 0x3, 0x15) writev(r2, &(0x7f0000000000)=[{&(0x7f0000000080)="58000000130019234083feff040d8c560a06580200ff0000000000000000ffff00000000000064009400ff0325010ebc000000000000008000f0fffeffe809005300fff5dd00000010000100070c100000000000ffffffff", 0x58}], 0x1) ioctl$DRM_IOCTL_MODE_CREATE_LEASE(0xffffffffffffffff, 0xc01864c6, &(0x7f0000001680)={&(0x7f0000001640)=[0x9, 0x400, 0x7fdfffff, 0x3, 0x3], 0x5, 0x80800, 0x0, 0xffffffffffffffff}) ioctl$TUNGETSNDBUF(r3, 0x800454d3, &(0x7f00000000c0)) fsetxattr$trusted_overlay_redirect(r3, &(0x7f0000001580), &(0x7f00000015c0)='./file0\x00', 0x8, 0x2) socket(0x200000100000011, 0x3, 0x0) sendmsg$NL80211_CMD_GET_COALESCE(0xffffffffffffffff, &(0x7f0000000400)={&(0x7f0000000180)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f00000003c0)={&(0x7f0000000200)={0x14, 0x0, 0x10, 0x70bd28, 0x25dfdbff, {{}, {@void, @void, @void}}, ["", "", "", "", "", ""]}, 0x14}, 0x1, 0x0, 0x0, 0x20000801}, 0x8800) sendmsg$nl_route_sched(r3, &(0x7f0000000480)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x20000}, 0xc, &(0x7f0000000340)={&(0x7f000000b400)=ANY=[@ANYBLOB="989c0000300001002cbd7000fddbdf2500000000543f010044011d0009000100766c616e00000000a4000280050006000700000006000300360100001c000200010000000800000008000000595900005e0e000002000000050006000000000006000300ea0300000600040088a8000005000600040000001c0002000400000006000000030000008000000003000000020000001c00020008000000ff0f0000070000000000000040000000018000001c00020002000000e70a00000700000004000000010100000200000075000600143ec81a7b9c4e5120bb7f8cc7ce5379eaf26a2981d752ea4e695724239ec1c59f7121642c4c517c7dbcdfd23fbdcda87ccd85d23e7a766cc4bbea14db89bee2b57f8e974f693a7e3166b5d81876123708d1c8cec1ed595c3d12447a1b7355f8891e5cfd0fcc1bc0ddb3cb9c327011d4700000000c00070001000000000000000c00080001000000020000000c3e09000a0001007065646974000000783d0280680e04000900000008000000070000003f0000000104000004040000080000007f000000080000004000000002000000b10a00000e0000000600000005000000dd000000030000000500000001fcffff00020000f800000005000000060000008000000006000000b107000001000100800000000200000007000000fbffffff02000000080000000500000004000000ffff000007000000fdffffff4e070000000000008000000002000000090000000900000000000006ff070000070000000500000001800000a300000002000000ff0100000900000008000000040000000700000001000000ff7f0000000400000002000000000000e5000000ffffffff07000000090000000900000000020000001000000000008008000000080800004000000005000000feffffff09000000020b0000bc00000000010001070000000500000003000000050000000002000007000000ff0f00000100000002000000c50600000900000004000000ff0f00000900000020000000e1ffffff0200000007000000080000004a820000010000000000008000000000ffff0000416c0000010400000000000003000000ac1000001e9e00000008000000010000ffffff7f04000000040000000400000000010000ff0700005c380000000000000200000009000000d7aa000000004000010000000800000009000000690100000001000004000000000800000300000009000000060000000100000000000080050000007da9000089fc00008100000002000000f9ffffff0000000000000000e0ffffff07000000ff030000070000009d00000004000000050000007f0000008100000069d60000f000000000000000fffeffffff0f00000500000001000000ff0000000900000040000000050000004000000000000100ffff000004000000ff01000003000000fdffffff130000004b8800000200000000040000060000000600000004000000b9000000ffff000009000000a9000000070000003f00000020000000ff070000a70a000008000000010100000104000007000000b50100000400000005000000ff030000a8370000000000007b0700005404000000000000b16500000000000002ffffffff7f000007000000ff07000020000000ee0a000000000080110200000100000001000000000000005f020000ffff00006c6a00008100000000000100000000800500000001040000020000000100000001000000060000000000000008000000bbc80000050000003f000000b097781200800000090000000700000008000000c70b000002000000090000000900000009000000030000000001000001000000070000000000000004000000050000000000000001000000ff0f0000ff070000720c000006000000000400000400000004000000450b000004000000ff7f0000ff00000007000000010400000100000000000000000400000900000026000000080000000080000000800000197b000040000000c98e0000960400000300000000000000e6240000c00000000200000001000000060000000100000000feffff0008000006000000018000000100000004000000080000000000008002000000ff0f000040000000c00200000900000006000000ff7f000020000000e0000000fcffffff010000000800000000000000400000000000000003000000fcffffff090000000900000009000000064a000004000000320f00006a0b0000040000000600000092060000060000009e0d00007f1700000100000000000080bc00000006000000000000000000000003000000030000001f00000081000000400000000500000007000000a50600006a0f0000ff010000ff03000000000000ff0000007a000000ff7f00000400000003000000ff070000050000000400000007000000050000000300000000000000080000000700000000f0ffff060000000400000001010000000000000200000007000000ff0100003f0000001f000000070000000000000008000000010400000900000098530000060000000000000008000000ff0700002700000001000000050000000100000001ffffff0100000000000000d605000005000000a00000003f00000009000000d3000000ff7f000004000000faffffffb7ffffff0500000002000000070d0000a10000002e0a0000ff010000ff0700000800000006000000060000000200000040000000ffffffff49fbffff05000000080000000000000029e4f14d020000000600000002000000ff0700000200000009000000ff070000010000000900000000f8ffff0000000006000000c900000007000000000000000001000000000000050600000400000003000000010000800400000000d8f80001000000000000003a0700000500000039050000030000001f00000008000000000000c04900000001000000010000000300000005000000070000002d0d0000ff7f0000040000000500000009000000270d0000c3080000ff000000060000000001000002000000020000000000001001000000520d0000943fdc3c03000000010000007c7d0000010000000101000003000000080000000100000006000000ff010000010000000101000001010000e39f00000104000004000000bc5d00005100000009000000000001001f000000040000003700000008000000050000000500000000000080080000000900000000000000e508000001000100c80300002a0000006b0e000000000000020000000800000006000000010100000300000000e590620100000001000000010000000900000001f8ffffffffffff0000000007000000070000002506000004000000ff070000040000000100008001000000090000003f000000ffff0000a91900000000000003000000bf030000a0a80000feffffff8100000006000000e1570000010000005f000000070000000200000005000000b300000003000000dc0000000100000007000000ff030000400000007f000000050000000900000004000000000000806bf5ffff0400000001000000ffffffff0500000000006000010000000500000000010000810000000900000002000000ff0300000300000071230000faffffff0700000005000000dc2400001f000000000c00003b000000010000800700000007000000080000001f0000006ebcffffffff000005000000010000000101000008000000ffffff7f010000000101000001010000000000001f00000001800000060000000800000004000000ff030000010000007f000000090000000400000056080000050000002000000001800000980000000500000020000000fcffffff03000000010000000400000007000000000002000600000001000000000400000200000002000000010400000200000008000000010000008000000000040000080000000100000000100000ffffffff80000000080000007f000000ff0700000800000003000000fc810000008000000600000009000000400000004700000001000100ffffffff020000005bf900004c4c0000020000000300000002000000000000000000008003000000020000007f000000ffff00000500000000000000050000000800000001040000010001002000000001800000000100001f00000000000100080000000400000007000000040000000104000018a80000ff030000c385000002000000ff7f00000400000007000000030000007300000005000000090000004000000009000000d30d00000400000006000000030000003f000000f7ffffff07000000f9ffffff0300000009000000f7ffffff4000000002000000030000000002000008000000810000000900000000000000040000000600000006000000020000007f0000000700000001000000d8f4ffff02000000000000001f0000002f6600005401000015bbffff00080000000400000000000008000000800c00000100000000000000ff07000005000000ff030000010000000600000001000000e1ffffff0900000000040000ffffffffffffff7f0002000005000000080000008100000000000000b40a0000090000001f0000000900000009000000000200000600000001000000080000000001000008000000ffffffff0100000009000000000000000900000005000000ff030000010000003100000074f100000900000004000000001000000500000000000080ea0700000200000003000000cf000000eebf0000050000001f00000001000000000000000104000005000000800000007f000000ff7f0000a962ffff7f000000810000000700000000100000080000000900000002000000030000000000000006000000060000000600000003000000020000006c0000000000000000080000810000000600000004000100040001000500010002000000030000000200010003000100030001000000010003000000fbfa00000000000000000100020000000300010001000000030001000300000002000100030000000100010001000100030000000500010000000100010000000400000002000100000000000000010003000000040000000400010001000100010001000100020004000000030000000400000000000100010000000b0001000200000002000100000001000300000002000000040001000000000001000000040001000200000004000100050000000000000001000100050001000000000003000000050001000100000001000000040000000200010005000000040000000400010002000100020001000200c139040001000000000005000100030001000300000004000000010001000500000001000000000000000500010003000000050001000400000005000100040000000000000000000100020000000200000002000100050001000200010004000000020001000200000001000100040000000100ea7b0d0001000100010003000000020000000100010000000000030000000100000003000100030000000000010002000000010000000500010001000000060001000100010005000100010000000200000004000100000000000500010001000100000001000300010000000000000000000000000001000000800e0200ffffffff08000000070000000000000007000000000700000600000004000000090000000008000001010000020000003f000000000001000700000005000000ff010000000200005ef400007f0000004c0000000600000003000000ff7f000006000000ff7f000001000000b70200000000000007000000ab0000000200000004000000030000002005000009000000ff01000000020000ff0000000000000009000000f8fffffffaffffff0600000000080000040000000000000005000000883b5c17060000000100000009000000060000003c07000004000000200000000100008000000000ff0100006e0d00000900000007000000ff000000010001000200000009000000290000008000000009000000ff03000005000000ff010000040000000200000009000000ff070000ff01000005000000fb0c0000ff0f0000008000000600000000000000ff030000ab060000f9ffffff0100000009000000ff7f00000000000008000000000200000200000091f1ffff540500000001000002000000ff7f0000040000000c80000000000000040000009300ffffe6150000070000003900000007000000060000000101000001000000ffffffff1f00000001000000000001000500000003000000010000800600000000000000060000000800000001040000040000008100000088ffffffffff000007000000e907000008000000060000004700000001000080000000000300000035080000010000000c06000002000000020000000004000005600000a3ae0000010001000000000076000000010001000700000000000000810000000900000003000000010000000104000004000000ff0f000002000000000000000101000000000000120b000003000000590000000600000054000000060000000500000003000000000000000400000007000000c0080000010000800500000001800000b3000000eb0000000d8000000900000001000000010000000200000025d00000090000000800000008000000090000005237196f01000000a05d0000d2ee00000000000003000000000100000000002006000000fdffffff400000008100000002000000020000000700000007000000200000000200000009000000cf040000e1440000070000000506000079070000ffff000004000000ff000000ff7f00001f00000004000000008000005f00000008000000ffffff7f0020000042fa3e5d0400000006000000ffffff7f000000805bfc000001000000000000000101000001000000018000000900000044f700000000000009000000010000000000000080000000ffffff7f0400000005000000070000000000000003000000ff000000040000000080ffff0200000007000000be00000000010000060000000600000008000000090000007d00000001000000840300002000000000000000ff0700000008000001f0ffff0300000006000000030000000400000006000000ff07000000000080ff07000005000000ffffffff01000080000000000800000002000000d0000000a16200000900000001000000010000800600000006000000ffff000004000000050000000900000004000000ff0700000100000046ffffff0000000000010000010000000000008000080000030000000600000005000000edbcff56010001000080000001f0ffff08000000f9d80000000000ffffff00000400000000000000070000007f00000037000000faffffff070000000000000001000000f8ffffff04000000060000000200000004000000ff030000ff000000008000000500000007000000020000001f000000ae09000000800000030000000800000000000000000e000006000000000000800100000081000000070000000500000004000000ff0000000300000001000080c200000009000000ab00000007000000018000000000000081000000010000000800000000080000ffff0000ff7f000000000000556d000023a8000000000080000001003e0c00000000008001000000fbffffff3a0700000200000000000000090000006db90000010000008195000004000000060000009b0000000500000006000000ffff00000004000009000000060000000700000007000000030000000200000009030000ebce000004000000060000000000000002000000aa00000000000000090000002dfeffff33000000ff0f0000010000000100000006000000980000000000c037ff03000008000000511b000004000000090000000200000009000000d3a600000000008081000000ffffff7ffeffffffadd2000001000000060000007f0000000500000001000100f40e0000fd000000db000000050000000700000003080000050000000100000080f4ffff0400000005000000ff010000ff00000002000000090000000800000044a60000910000000010000001000000ffffff7fff01000001000000070000007a00000002000000010000005c000000000800000900000007000000fdffffff08000000018000000004000003000000050000007c0c0000f7ffffffff0f000005000000200000004378000000800000090000004000000001000000010000000800000006000000020000000000000098e00000d416000003000000030000000000000008000000867a3f2f1bd6000009000000080000000500000000800000000000000000010009000000ff01000002000000010000000800000001040000fcffffff03000000ffffffff08000000040000000300000000000000090000000b9f0000d4f5ffffff0000000080000005000000bbe5af6f060000000400000007000000000000000600000090f5ffff08000000000100000500000006000000000000000200000002000000090000000000000005000000ff000000220300000800000003000000c0ff0100ff00000005000000c9000000030000008b41000037050000faffffff1404317602000000040000000180000001000000f2090000ffffff7f200000000600000000000080070000001f0000003f0000000400000000fefffff7ffffffa085ffffffffff7f7060000040000000ff0100000e000000000200000600000008a7000006000000000000000080000007ffffff07000000683e0000000000010104000000000100faffffff010000000600000006000000020000000101000080000000ff000000684c00000000000081000000ca0b0000ffff00000000000307000000ff010000090000000180000005000000b30a00000800000000080000090000000080000000010000ff07000001040000060000000600000009000000010000000010000000000000f9000000faffffff080000000100000040000000ff7f000004000000040000000000000001000100000100002c0f00000002080000010000010000008b9fae7411ffffff03000000f900000000040000810000000900000004000000ffffffff06000000010100000000000004000000050000000180000002000000000000800300000000000000000000d906000000ff030000bdc10000030000001dd5000000040000ff7f0000ff0000000700000089000000ff010000020000000400000000020000ffffffff010000000000000007000000090000000300000001f8ffff0800000007000000380a00008000000001000000010001003f0000000900000000000080000000800600000005000000000000800100000008000000030000000400000000000100010000000000000095cd276b6904000000000000c1d5920900000000cc7cffff020000000000000009000000010000808100000000000000000048d506000000010000005c0e0000000000000000000108000000008000000000000040000000650000000400000004000000faffffff00100000060000000000000009000000800000000300000005000000090000008a71000080000000b9000000050000000700000001000000010000000000000005000000ffffff7f010000000600000004000000060000000300000000000000c0ffffffff030000c1000000040000008fffffff030000000900000008000000688f0000060000002c0d000071270000ee0e0000040000002c0e00000300000008000000f9050000010001007f000000ff0300003f0000009e0f00000001000001040000010000000400000004000000090000000200000000000000ff0f0000018000000180ffff02000000fbffffff080000009c0400007000000007000000010000000300000005000000ff01000880ffffff05000000008000000104000000010000ff7f00000700000002000000040000000600000007000000000800000200000009050000030000007f0000001856000016940000051d0000ff0700000000000000040000050000000000000064090000020000000200000001000100030000000100000004000000030001000400000001000000a52401000100010005000000010001000500010001000000040001000400000000000100040001000400010001000000000000000100010004000000010000000400010002000100000000000400000005000000040001000100010000000100020000000500000001000000040000000100010000000100010001000200000000000100000000000600000003000000040001000900000001000000050001000500010003000000a3ca01000100000002000000050000000200000004000000040001000200000002000000a7d800000100000004000100010000000100000004000000040001000400010002000000030001000100000002000100050002000000010005000000050000000200000004000100050001000100010005000100000001000400010002000000050001000000010000000000020000000100010002000100050001000400010000000100020001000300010000000100050000000300010001000000030001000400010003000000000000000500000000000000000001000200000001000100050000000400010000000000050000000100000001000100030001000000df8300000000020000000100010005000000040000000300000005000000010000000000010005000100020000000200000000000000a80005802c000680060001000400000006000100010000000600010001000000060002000100000006000200000000002c000680060001000200000006000100050000000600010005000000060002000000000006000100020000002400068006000200000000000600010003000000060002000100000006000100040000000c00068006000100030000001c000680060001000400000006000200010000000600020000000000180105802c000680060002000100000006000200010000000600010000000000060001000000000006000100050000003c00068006000200010000000600020001000000060001000400000006000200000000000600010000000000060002000100000006000100020000002c000680060002000000000006000200000000000600010000000000060001000400000006000200000000001c0006800600010004000000060001000400000006000100010000000c00068006000100030000003c00068006000200000000000600020001000000060002000000000006000100040000000600010003000000060002000100000006000200010000001c0006800600020001000000060002000000000006000100050000004801058044000680060001000100000006000200010000000600010005000000060001000500000006000200000000000600020001000000060002000100000006000100000000004c0006800600020001000000060001000600000006000100000000000600010001000000060001000200000006000100050000000600010000000000060002000100000006000200000000001c00068006000100010000000600010005000000060002000000000024000680060001000200000006000100040000000600010003000000060002000100000024000680060002000000000006000200000000000600020000000000060002000000000044000680060002000000000006000200010000000600020000000000060001000400000006000100050000000600020001000000060002000000000006000200010000000c0006800600010001000000340005800c0006800600020000000000240006800600010001000000060002000100000006000200000000000600010000000000180005801400068006000100020000000600010002000000200005801c000680060001000400000006000200000000000600010002000000980e0200fdffffffb318000000000020eb63cc78b400000002ff0000060000003f00000008000000000001000200000000900000ff030000399334680900000001000080d5a00000e9d8000003000000000000000300000000040000c5000000ffff000007000000000000fa00f0ffff08000000de30000081ffffff01040000ffffff7f0000000008000000ab00000009000000000100000300000008000000070000006c3700000800000000000000ffffffff03000000200000000000000001000000090000000700000007000000000200005f080000000000004b0c0000f7ffffff0400000006000000780f000005000000ff0f000000010000e771ffffa8e7000002000000ff0f000003000000c20000000300000009000000eee6ee3700000000faffffff0100000001000000020000000800000002000000ff070000ff00000009000000000800000900000005000000d11d073eea00000080000000ff0700000300000005000000ff070000ffffffff0900000004000000040000007f00000002000000910e000009000000f40000000100010001000080000000000300000001000000ff0f00000700000004000000660000000400000040000000040000000400000000000000030000000900000006000000050000000200000008000000ff0100000900000086000000dd1a0000080000000400000000000100d243000001000000000200008000000000000000060000002be60000080000000300000008000000030000001f00000009000000020000000900000003000000010000000500000003000000ff7f0000070000000300000001000000ff010000090000000100000001000000010000000800000000000000ffff00000900000024d80000020000004300000006000000030000000700000075770000c609000001000000020000000100000005000000060000000000000000080000070000000600000009000000a04e00000101000008000000ffffffff030000000800000001040000090000000002000002000000010000008000000008000000040000005ca3000009000000000000c8070000000700000007000000000000009a00000008000000000a000008000000373b00000100010081000000000000800600000000040000050000000104000067ed0000010400000800000000000000090000008100000002000000ffff00000700000093570000ff070000030000000800000001040000030000000600000018aa000007000000010000003f000000010400000400000009000000090000009044000008000000f650ffff00000000010000000800000007040000ff07000000040000020000000100000007000000090000001f00000000000000a5d6000009000000240c000080000000000000000500000073000000010001000100000000020000ffffffff070000000700000005000000020000000300000007000000400000007f00000003000000070000004b0b0000050000000800000001000000000040020000000067a50000070000005d0a0000c8ffffff01000000f504000020000000000000803f0000000101000000020000090000000101000003000000060000000900000000000080a1040000040000000900000008000000f9ffffffc806000006000000001000003f0000000100000003000000000000800700000001000000040000000900000009000000800000002a0400000100000020000000ffffff7f008000000000008000010000090000000900000000f8ffff050000000008000000faffff080000000100000001ffffff03000000ffffffff5ede00000900000008000000ff7f000007000000ff000000000000000700000005000000020000000300000004000000000000002000000003000000090000000900000001800000020000007c0b00000400000000000000ffff0000c0ffffff0100000034dd0000a3750000ffff0000ffffffff0100000001f0ffff030000000900000007000000dd0c0000ffffff7f100000006ccaf84c100100000700000008000000ffffffff090000000010000005000000fe0400000600000000000000000000000000000009000000080000000500000002000000ffffffff00100000ffffff7f09000000010000000180ffff010000000800000008000000030000004e000000010001000500000002000000080000000800000080000000ff7f00003700000008000000ff7f0000010400000600000004000000000000007f000000020000007f000000060000000400000003000000f9ffffffff0f000000000100018000000600000001800000070000000100008009000000f9ffffff0800000084a900000800000007000000a200000000000000050000000308000000000100200000002a0c0000f02a0000080000003f00000009000000030000000200000008000000010000800100000080ffffff7d000000000100000600000008000000000000007700000009000000c68900000000008001000000bbcf000003000000ff010000ff0f000020000000ff7f00003c09b27a144f00000500000005740000000000000300000004000000ffffff7fffff00000300000006000000060000000100000000010000ff03000002000000008000006199000005000000d8000000050000000500000008000000010000000600000007000000f70a00002a0000000101000000000000000e0000010400000002000003000000e000000085faffff1f0000000200000001000000040000000000000001000000ff030000c8e700000100000004000000cf000000f60c00002b000000050000005d0f00000600000006000000feffffff070000000080000000040000ffffffff09000000faffffff18000000030000000000000006000000020000000900000002000000000800008100000000010000000000000800000009000000200b0000070000000900000001000000ffffffffff00000007000000f7ffffff020000000100000001000000050000000200000000000000080000000800000070020000190d00000100000002000000030000000600000008000000000100000600000005000000000000000000000006000000030000001f00000006000000010000000080ffff9f19565180000000070000000700000001000000050000000800000004000000ff07000002000000ff0700000002000000100000ff000000050000000200000008000000060000000700000005000000010000000008000000000080040000000200000009000000ff7f000009000000c90000000600000001000080010000000300000001800000000800000500000005000000010000000800000020000000ffffff7f010000807f0000000000020081000000ffff000007000000704a8b37ff010000ab5a0000fcffffff8000000008000000070000000600000001000000f5670000a40c0000800000000200000001fcffff01040000040000002a0000000100000006000000080000000038000003000000070000007b05000000121500ffffffff218d00000300000030ba00000000000001000000f7ffffff0600000000f8ffff010400000000000081000000e4e0000089080000050000000180000002000000fdffffff09000000000000000200000001040000feffffff3f0000000400000008000000000004000300000005000000040000000100010003000000060000005f7600000300000082000000c40900002000000009000000050000000900000008000000000800000700000022000000a9940000ffff0000ffffff7f00000000200000000080000002000000020000000500000006000000fbffffffff030000dbfffffffcffffff000000140080000001000000243000000200000001000080070000002000000001000000d90a0000020000000600000001feffff070000000200000002000000020000000300000004000000120f0000fcffffff030000006d050000d0050000050000000180000009000000d4ffffff01040000d50a0000020000000900000003000000080000000f0000000101000003000000000800006329000098000000460c00006f0b000000100000060000000e000000070000000400000006000000080000009e0000000900000005000000030000000300000007000000660000000100000004000000ffffffff01000000080000000500000009000000010400000b00000002000000000000000080000008000000f88f0000030000000800000065580493200000000000010001000000dc0e0000030000000500000008000000810000003f000000000400000100000007000000ffffffff07000000e8ef5263000000000200000002000000030000000800000004000000040000000600000009000000030000000400000002000000050000000600000009000000090000000700000003000000000000000200010002000000040001000200000000000000000000000700010004000000010001000400000001004e2601000000050001000400010002000100010001000300010002000000030000000000010000000100000000000000000004000100010000006e29000002000100050001000000010005000100030000000300000004000000000000000200010001000100040001000300000000000000020000000500000002000100000001000100010000000100050000000400000004000100040001000b0000000400000002000000050001000000010001000100020000000400000003000100010001000100000004000100000000000500000003000100070000000500000005000000050001000500010001000100020000000000000004000000040000000200000005000100020001000100010004000100030000000200000004000100000001000200010005000100000001000300010000000100020000000100000004000000020000000fc1000000000100010000000200010001000000030001000500010003000100020001000200010002000000030000000500000001000000000001000400010005000100040001000300010003000000040000000100000005000000040000000100010005000100040001000500010002000100000000000200000001000000050000000500000000000000800e040001000000ff0f000000000000010100000600000004070000090000000200000065087d3aff0f00000000000000000000449632290200000007000000ffffffff02000000000100000500000001000000131a000000020000480400000700000008000000661500007f00000000040000000000000700000000000000040000000900000026000000330000001f0000000080000020000000000000a00002000005000000c780000006000000fc00000000000000001000000200000001000000060000000180ffff000000002b2e00000300000000100000010400000600000007000000e900000003000000080000007de9000007000000030000003a0000000900000002000000c7000000ffff000000000100010000005c0c00004b9f00001f000000ffff0000060000000000000007000000e7a800000800000001000100000000800200000002000000010000009309000003000000b205000001000100e20c00000100000000f8ffff070000004d8d00000600000002000000000200000900000007000000a8000000050000000000000007000000ff0a00001f0000000c050000070000003f000000faffffff00000080040000000700000001000100020000000200000003000000090000000400000009000000080000000001000003000000200000001c0000000100000000000000001000009200000005000000d500000006000000000200000100000005000000050000000900000005000000ffffffff05000000020600000180000008000000f3e400000600000009000000ffff000003000000018000004d040000020000000100000000000000010000801800000000400200ff0300004c26000004000000060000003f0000000180000000000000bd000000070000000000000009000000fcffffff0500000000000000ff7f0000020000005c00000081000000050000000001000004000000ffffffff01000000cfc3000006000000001000000300000004000000f7e200000700000002000000c4030000010100000400000000040000ebae541904000000010100000400000000800000fffffffff9ffffff0800000004000000d2360000030000003f000000ff0f00000300000001000000ff7f000000080000b8000000ff030000ffffff7f0800000000000000ff0f0000050000008b00000004000000030000001d030000a900000001000000410000000800000003000000000100004000000002000000426e000000080000040000000500000004000000080000001f000000060000000300000000f0ffff090000000900000000000000080000000010000003000000c319000009000000000000001833000000000000800000000700000002000000800000008100000008000000020000005f03000002000000810000004a00000081000000050000002902000007000000f4c400000900000000800000000200000000004003000000ffffffff060000000000000003000000000000800008000009000000f8ffffff0900000006000000b66000000000000003000000090000000900000004000000ff0100000700000081000000040000000300000004000000090000002000000000000000ff7f0000f801000006000000010000000800000002000000ff01000059d400000900000005000000000000007f00000007000000050000000400000000000080010100001803000006000000030000000100000007000000ffffffff0400000020000000ffffff7ff7ffffff10ba000005000000ff070000c6fe000000000080ff7f00005d0f000008000000310000008000000003000000ff0100000000000002000000ff0000000700000005000000f80600003f0000000600000001000000ff070000ffffff7f00000100fbffffff0600000081000000ff0f0000ff7f00003f000000ffffffff0600000009000000df040000ff030000010000003500000007000000000000000200000004000000ff030000070000002400000005000000200000001f000000060000005f04000080000000030000000200000009000000040000000900000007000000fffeffff080000002000000003000000060000000180000039070000810000000400000000000000030000003f00000080000000ffffffff1200000000000000030000000010000003000000ff0000000200000008000000cb0000000700000006000000000000000100000008000000030000000300000002000000050000009d0f000011060000000000003fcc0000200000000200000008000000030000000100000001000000faffffffff070000710000000000000007000000faffffff0010000004000000ff07000007000000ff0300009200000009000000108d00001f0000009c040000000000000300000007000000f7ffffff08000000710000007f000000040000000300000007000000161000000200000003000000de0000000800000001000000d2c99329feffffff80000000400000000000000009000000060000000500000001000000ff07000000010000010000004d000000070000000700000087b3000005000000800000000600000000000080000a0000ffff0000000000000200000004000000b1050000280600000400000008000000ffff0000ff070000070000000400000003000000ffff00000400000001000000050000000004000006000000090000000300000009000000ff030000000000800100010003000000000000800100010007000000010100000800000001000100010000000300000007000000080000000c000000030000002000000008000000030000001f00000001000000ff010000be00000009000000020000000300000040000000010000000000000002000000ffff0000f7ffffff04000000030000000400000005000000ce0000000600000001000080090000000080000003000000fcffffff04000000050000000100000004000000001000000700000000000000450a000003000000010400000200000001040000a6000000ffffffff0700000000080000f8ffffff1f0000000900000000ffffff06000000080000005d0a0000020000000700000000000000040000000600000008000000006c330000010000080000000400000061080000ffffffff0000000000000000e40c0000090000001f000000010000001c00000098000000c305000009000000ff010000040000000200000001040000040000001a810000010000800080000006000000030000000500000009000000000000000600000040000000010000000300000003000000a72f000007000000a47c0000080000000400000002000000407000000100000000000080f7f100000300000001800000010000006f960000cb8f000009000000070000005c09000013da0000010000000900000004000000009800000000000002000000080000000900000002000000090000000200000000000000feffffff020000001f0000000000000008000000080000000500000073a00000010100008000000000100000070000000101000001000000e400000005000000080000000700000001000000ae0000000700000000000080faffffff090000000700000007000000020000007e0000000900000002000000070000000100000005000000008000001f0000005f8cb40106000000da000000050000000000000003000000001000000100000000000000000000004c00000000000800ff0000003f000000b5090000040000005e07000001000000feffffff090000000300000056ffffff070000000000008003000000ff000000001000000104000004000000030000000700000006000000c10e0000b0000000000000000600000004000000ff0000003c3d0000090000000200000009000000010000000200000009000000030000003f0000006d0000000000000001040000030000008fe30000070000000800000000000000fcffffff00000000ff0f000003000000020000004000000008000000000001001f00000020000000ffff000000000000aa0400000500000003000000e6000000890c0000ff0f00003f0000006f0000000200000001000000eb000000ff7f000003000000ff010000000000003f0000003f000000ffffff7f0100000009000000140e0000010000802a000000b7010000050000000000000001000000000000008f000000030000000600000000010000000000003a05000001000000040000008700000080800000010000000100000002000000ffffffff060000000000000009000000f80e00000400000009000000de0a000001000000faffffff701c000003000000030000000600000009000000887b0000e900000001000000fffeffffff0100000700000009000000e1000000090000000008000013fb0000000000000300010005000100030000000000000002000000060001000000010001000000030001000300000002000000000000000400000004000000000001000100000003000000060001000000010005000000020001000200010001000000010001000000000002000100030000000000010000000000010001000500010003000000050001000500000000000100030000000400912d0100010005000000040000000100000001000100000000000100000000000000000000000300000000000100010000000200010005000100030000000000010001000100050001000200000001000000000001000400000000000000edbc000002000100060000000700010002000000050000000500000004000100040001000600000004000100060001000400010002000000050001000400010000000100020001000400000005000100030000000000000002000100040001000000010000000100010000000400000005000000050001000400000002000100020000000400010004000100040000000200010005000000030001000500010004000100040001000000000004000000010000000200010001000000050000000000000002000100030001000e000000030001000000000000000000050001000500010001000000040001000100010000000100030001000100000002000000050000000200010000000100000000006b000600067362f18608d7159d7da495e40aaae07ec408501bd8a63ccedd02f9e144f4ae923370c7dcad4f32f2747f88a0037ec24cbb4744b390da0d30c8d92adcae53b2b23eb9cc7ab30572a091c8bacf037e9f6fddc87e84597ed5cc3ac31db8d1e5fc5bcd3da5c41daf000c00070001000000010000000c0008000600000003000000f00401009c000d000b000100736b626d6f6400007000028020000200ff0f0000ffffffff06000000050000000800000000000000000000000a000300ffffffffffff000006000500810000000a00030079a0ad9a918d000020000200420200003500000000000010ffffff7f010000000e000000000000000a000300aaaaaaaaaabb0000040006000c00070001000000010000000c0008000300000000000000d4011d0007000100787400000c010280620006000001726177000000000000000000000000000000000000000000000000000000000008006b00a2a221d4b6e0235ce5de9a22c6e0f477f94fea7129be1a3e505f5bd7a52861c8dc999353f8cb5f1cd1a25cf4f588dc6027cbd1233a16737a000008000300000200005600060002006d616e676c65000000000000000000000000000000000000000000000000000040003d00e8377cc9c3601717a5d8320d61efeb98f197441b0de487331470a4de0816e56000b614e03b807fee47101e2400002400010072617700000000000000000000000000000000000000000000000000000000000800020001000000080002000200000008000200020000000800020002000000a40006001e7c2dd69635f7982c15775057f45ed8ce8af43e33b0755db623c490505701b8579a8d9d44990709edccdb3a15f66cf623d7ff1bc302e51dd461b7c3643b5593747f9c610ea4d97bfa37f9fa49a903f3d46be782d785a8742605af28320c3c20646e8ffe24d7ecbfeccbeba00ad0264c019dafe28a94f255d2fb696ee330cb5b380331c049e4764f77282eb9a695310dc82cf078bc37981c5560c9d0c3f6a13f0c00070001000000000000000c0008000000000000000000100105000b000100736b626d6f6400001c0002800a000400f1b06651221a00000a000300aaaaaaaaaa390000ca000600e159aa5590971d5492a7f250618960d01eefa791e24a2843d40abc7ad8ddcfc7156450d65c12db3118c40afd3fe9b5109000112e123e1b2e9ae53a4b604738cbcac4c22d2a160b50b5518458b87ede1a214b2b541ace13987d009d28bfdf8cf5a22374e6f7e37f5fab628dd15977cfd04f4fde59f93e86a7befafc9de3a33a352ccede0502b4a0cdf6ba7c899c977dd576cd5a94bed70ab675c0d2028cf7d9b96f2abed053b68ff1cac0b8ccc4cc3291c1bbc11da2df6b6f78f679a6bb0bc1db3c9872e02cac00000c00070001000000010000000c00080003000000020000006c011200090001006d706c73000000004c0002800500060006000000050008000000000005000600000000000500060000000000050006000000000005000600030000000600040088f5000005000800000000000500060005000000f8000600fda7e584d6f12654fdf716ee5a76b12e2e745f7f5463b8d7645d46117d42f4310b72bb66619eaca3e6f08ab63ef8afced9d4332da3ee281747b52ffb0e5f394bcff2d0609b999c176469c2a07d9a8f76a95e131e1b5453b206263d414586fe31a254c8e0540dc833d593521cf08c62679de1ff2c66c0df316feaa6cabb1d1f7773d74ec9d810cee555a1dfd8e358ae168f0f806eba10deb9d161c4dfd487ca9fe0e12e69f80eee04523e7e3097d7bfb0cf8034e69f0050b40019ed8201c13feb942317bab01cb9a3be48621764b96e5d513b9f7e348208584158aa4cca2e353847b571e7f86906b63874b85dc0d6c2b179cfd2120c00070000000000000000000c00080003000000030000007c2f0100a0010f0008000100697074004c01028008000200010000008f000600800073656375726974790000000000000000000000000000000000000000000000000900faff5f8421d4c4a3783c1920cff520a8c1a2c6dedc03d3a870ae5d9f2b187fa8956554a8e8651cd6c8a0d0801c50d1fc30a3738f8750b0392e996b6cb87b3d5d4c1a8694ee1a8a522882609a6768ddc5066a2979979b2043e9497c4561f7e14b9e08be9161c5be00af000600010066696c746572000000000000000000000000000000000000000000000000000007000300d8106d42a0dc02faadfd4d580621885d93078d899a592a8bf277a6290afdb3dfb9a99564f1f0572c1246b9280dcbb394a68c15f6d355921c0d146a0436eed7be4d35929bd214276736cb9d5abca12ce42a425f6808bd08485bf4c0090b448a5b08760c103bcf99162e00ab57ff3ad47083c88bb9a2c29ac6a63c75d990b7083f7a1ac799c40030000600b180a3a71b7f2e1d3bec4dc0d5354f033803f8907cd8a65a7eefd22009d20d0e4563d610fc4ccffe6f334ca30c00070000000000000000000c00080001000000010000003c1d00000a0001007065646974000000bc1c0280680e02000900000040000000000000200800000000040000030000000000000007000000080000000200000002000000ffffff7f01000000ff07000003000000a19d000001000000850b00007f000000ff03000003000000030000000400000021ff81160800000008000000c0ffffff03000000400000000800000001000080400000000200000002000000030000005acf00000300000000010000638a0000a603000046d1000008000000ba0000000900000009000000040000002000000004000000050000000000000000000000bb00000004000000ff0100000000000009000000010000000000000007000000010000000600000000000000ff01000000800000173c00004008000009000000060000003500000001ffffff06000000000000000500000007000000520a00000000010008000000050000003f0000003f00000001000000070000000080ffff0180000002000000ff030000000400000100000001800000040000000000ce0201000100aa000000030000002d0d00007f000000090000001200000003000000fffffffffbffffff050000007f000000ffffff7f00000000030000002a00000004000000050000000300000003000000000000800000000002000000ff010000040000000900000006000000040000000800000000000000000000000100000001000000000000000100000002000000060000000900000001000000000001000100000001000000000100000200000000000080090000000800000004000000320600000400000009000000dffd000000040000fe00000003000000f8ffffff01000000fb7400008100000000040000ff070000e4000000080000008000000002000000400000000400000000000100c2000000ffffffff0300000000000000090000000200000000000000ce00000000010000c898000001000000fb000000300e00001f00000000000000080000000101000001000000d20000000000fffffb000000090000000300000000800000050000000000010009000000daaf0000eb080000080000001f7eb91a0180000001000000fbffffff8fbd166effff00000700000005000000020000000700000037000000020000000800000001000000f90000000001000005000000b417000000000080400000000200000004000000070000000300000005000000f9ffffff040000000400000002000000050000000900000003000000c80f00001f000000060000000010000027000000090000000500000007000000230b0000066d0000070000000180000051040000ff00000004000000f7ffffffc700000000000002ba080000ff030000860100000400000007000000ff070000ff010000008000000300000006000000070000000010000007000000ae00000000000000090000000700000000080000010100000500000000040000dc000000030000001f00000000100000ff01000000010000018000001f0000000700000004000000180000007b0600000000000000000000010000000300000006000000ff0100000100000005000000ffff000000100000090000000900000002000000ea0f3c5491fc000008000000060000000900000007000000000000000000000004000000080000000800000000000080d4080000fffffffffa0d0000080000000600000002000000f7ffffff0000000002000000080000000000000009000000d709000007000000c60b00000800000001000000f8ffffff40000000040000007f0000000000010009000000030100000400000007000000080000000700000000000000faffffff090000000400000003000000020000000400000006000000fdffffff0500000002000000010400000000ffffbf02000006000000040000001d000000ea4900001a06000005000000010000000400000001000000defdfffffaffffff01000000000000000004000081000000080000000400000088f700004000000000000000ff01000007000000df0289253f000000060000000004000001010000980700000100000047960000000000000300000005000000030000000000000008000000040000000800000002000000630a00000800000009000000010000803400000000000000ffffff7f03000000a400000004000000ff7f0000030000000010000006000000810000000600000000010000ff0f0000ff0700000000120004000000590000003f000000090000000500000000080000000200000100010002000000060000003f00000015040000040000000100000001000000faffffff0300000000000000ffff00001f000000050000000100008009000000020000000600000009000000070000000c0000000200000003000000ff070000ff7f00000800000001800000010000802d0000004e220000abae000081000000ff7f0000040000006700000009000000425700006300000008000000f8ffffffff0f0000000000000100010000000000c3f80000070000000500000009000000000000c003000000c6920000060000000000008074700000ae540000fcffffff0800000005000000020000001f00000005000000ff0300000700000004000000060000001f000000080000000300000001000000030a00003f0000000100000006000000000000000100000005000000c000000007000000f7ffffffaa0000000000000008000000ffffff7f09000000050000001d0e000006000000200000001707000000000000a8000000ffffffff040000003f00000003000000ff0700000000000002000000fdffffff00000000e30800000600000003000000ff7f00000100000003000000050000009e7e0000ff7f000003000000910000002d00000005000000ff7f0000010000000700000005000000018000000000010000000000ffff00003f0000000900000000020000060000000800000009000000ff0f000006000000080000000100000005000000020000008000000000000000080000000400000001000000200020000101000008000000ff0100000500000003000000040000000300000000000100fbffffff0200000006000000ff000000070000000700000008000000080000000104000000000000a9000000e1ffffff1105000000004001000000000000000008000000ff0300000900000001000100ff0700000400000000000000ffffffff000000003f0000005c32000007000000080d00000200000081000000000000003700000000000000020000008000000007000000d8000000ff7f00000101000007000000ff7f00000800000034da000001000000010400000600000000000000ffffffff0900000000000000ffffffff01040000830e0000010000000700000003000000ffffffffffffff7f070000000400000008000000cabb00000300000007000000ff0000000900000000000000ff03000002000000040000007f000000080000000600000025ffffff03000000ff7f0000040000008606000000000000de340000bd00000023a00000ffffffff040000000600000007f1000000800000008000007f00000007000000060000000800000059000000ff010000070000008408000006000000090000000000c0000400000000000000288b0000090000000000000002000000ff0300000100000002000000080000009b1d0000ff7f0000ca000000000800001e00000000000080ff010000f7ffffff8000000000020000ff0f000000000000ff7f0000010000000000200102000000ff7f00007f000000080000000000008000000000018000000700000081000000fdffffff010000000100008008000000ff7f0000ff07000063000000ff7f00001d0400000100000003000000db000000020000000400000020000000c00d000002000000040000000600000002040000635000000708000001800000080000005d040000030000000100000006000000080000000200000007000000f7ffffff7f00000080000000000400000002000006000000b0b70000001000000008000007000000010000000400000003000000ff010000010000004000000000000000ffffffff0000000004000000030000000800000004000000ffffffff6600000071000000ff01000001040000fbffffff05000000c07d295a40000000ffffff7f07000000d881000005000000030000004c36f46d040000000400000008000000030000003dd3000000000000020000000700000000000000d40d000004000000050000000700000000020000810000000000010009000000010000000700000005000000de000000800aea7c0000000009000000080000000200000003000000040000000700000006000000001000000900000005000000c1ce0000ffff00000200000004000000030000000300000001000100030001000100010000000000010001000400000001000000050001000100000000000000000000000200000003000100030001000300010003000100020000000200010003000000050001000400000000000000020000000400000000000100010001000400000005000100030001000100010003000100000000000300000003000100010001000100000005000100000000000200010001000100000001000200010001000100000001000000f17c00000100010001000400000005000000040000000100010004000100020000000000000004000000020000000000010005000000050001000000000004000000020000000300010000000000020001000000000003000000000001000200000000000000000000000500000000000100030000000000000003000000020000000400000005000000000001000000010000000000030001000100d1d401000000010001000300000000000100030001000100000005000100050001000000000001000100020000000200000001000100000001000100010000000000030001000300010004000000040001000300000002000000030001000100000005000000020000000000000002000000040000000300010002000000040001000200000000000000040001000200000005000100030001000100000005000000040000000400010001000000500e0200010400000400000000000000000000000700000009030000c0ffffff4e1d00001f0000000500000035000000ffffffff00080000ffffff7f080000005200000004000000ff030000030000000100008081000000ffffff7f03000000080000000700000001030000810000000100000009000000ff000000ff010000560000007f000000050000004e0000000800000004000000fcffffff0600000008000000ffff0000690700001f000000080000001f00000008000000829b000005000000040000000300000079cc000004000000060000000700000001000080faffffff00000000ff0f0000ffffffff030000000800000000080000000000001b00000008000000010000000300000000000000cd0b0000f3770000ff07000004000000060000001f0000000100008008000000ee0000000080000001000080000000000008000003000000b280000000000100000000803eb40000ff03000005000000010000007f000000010400000400000001000000080000000300000080000000010000000300000000020000b200000001040000ca0700002000000007000000000400000700000000100000090000000800000004000000c100000000800000ffffffff090000001f000000f1b3000002000000fbffffff0000fffff8000000008000000100000001000000ae0000000400000000ffffff01000000090000000100000000800000010000000500000000000000ff0000003164000005000000ffffffff01000000010000000200000001000000010000007f0000000000002009000000070000008100000000000100a200000029810000bdfe0000fbffffff27000000080000001d05000000000100ff03000001040000bde50000000000000000008005000000ffff00007f0000000500000007000000080000007f0000000500000009000000c90e00001f00000001000000040000000000000001800000890b0000020000000100000000000080d7130000020000002a0a000086a9ffff00000100ffffff7f010000800100010001000100f9620000060000000200000000000000ff7f00006a000000ff7f00007f0000000900000000000000ff00000005000000090000000b0c00004d070000ff0300000400000006000000050000000100000004000000ff0000000080000000010000050000000400000009000000feffffff02000000ba9800002000000007000000010000000700000000000000020000007f00000006000000060000000001000006000000dc000000070000000004000004000000ffffffff070000000500000000000000ba00000007000000c0050000020000000c000000010000000600000020000000020000007f0000000000000001000000ff00000005000000feffffff090000000101000004000000fdffffff7f000000580000000001000001000000030000000900000001000080090000003f00000004000000090000000000000003000000ff0700000104000008000000010000800500000065fdffff0800000004000000070000000100000004000000090000000000000003000000060000000000feff160b00008c0000000400000006000000ff0700007207000002000000040000000000010005000000f2c1ffff06000000040000000700000009000000b6fbffffb7c70000930000004e04000002000000d500000001000000020000000300000001000080480b0000a7030000ff030000a30b0000ff070000018000007f0000000080000001000000018000000100000000040000060000000600000008000000010400000100ffff01040000810000006a000000000001006d0b0000f9f100005a0d000008000000080000000000008008000000ffff0000ff00000008000000010000800100000054c7e90604000000090000000100000008000000c863000057fc00000100000004000000000000008100000001000000c547000008000000ffffffffff0f0000020000004c4888150100000007000000bcc200003f000000020000000300000005000000a80c0000b21f000009000000050000001babffffc700000081000000ff070000040000000000000006000000b168000020000000f9fffffffeffffffff0000000200000005000000040000000100000000010000ff010000f8ffffffe30c0000020000000700000001feffffa8070000ffffffffffff000005000000ff0300000600000003000000000000000200000020000000070000000002000007000000200000001f0000000100000009000000080000000300000001000000010000001f0000007a0b0000080000000101000007000000cae70000c20100000400000081000000020000001f080000080000008000000005000000090000000400000082230000060000000eb90000081c000007000000ff010000090000000500000000000000ffff0000000800000000000008000000080000000100000008000000ffffff7fff07000000000000500000003f00000007929b3202000000feffffffffffff7f3f0000000800000004000000060000000100000006000000ffffff7fff0f00001f0100000040c1010000000000800000020000007f55000002000000080000007f000000cf0000000800000006000000ff0100000900000006000000fffffffffcffffff0000000027d30000f8ffffff0300000044db0000040000000700000004000000200000006c96000008000000ff0f000003000000000000000300000000000100040000007f0000007f000000ff0100000300000001000000000000000700000005000000800000007a0100000600000008000000090000000700000001040000010000000400000000000000000000000100000000000080630000007f000000060000000400000009000000fdffffff070000000101000000000000060000007f00000009000000d4e4000002000000270b0000030000000800000006000000950b000000000100800000000309000085000000e700000000000000010000000100000000020000000000000010000008000000ff070000ff070000050000000000008000000000fa030000925064672308000006000000ffffff7f080000000100000002000000810000003f00000002000000000000000800000001000000020000000700000003000000000200000000010005000000010000000100010000000000ff000000ff0100000500000007000000fbffffff03000000bc00000000000001040000006a00000001000000a65900000100000002000000010000008000000080000000ffff0000060000000900000008000000ac0000000300000003000000050000000500000000000000fbffffff030000002f8800000900000006000000acb300000300000000000000630c0000050000000008000007000000060000006d00000003000000ff070000030000000200000001010000540000000900000000040000faffffffffffffff040000001f000000000000000400000001000000000200000700000080000000070000000400000001800000010000007f0000000008000000000000f9ffffff07000000d8cc0000010001000800000009000000090000000101000002000000030000000600000009000000000100000100000008000000020000000600000005000000ab000000000000000000000000020000d700000000000080059c00002000000004000000a600000001000000ff7f000009000000a70000000100ffff00000100ff01000000100000da57000005000000050000000700000004000000f7ffffff74010000000000000400000001000000edd500000600000002000000ea0000000400000002000000adf100003f4d0000819100000000000005000000b30200000080ffffe80700000300000008000000060000000200000040000000000000000000010003000000000000000900000000000000ff0f000000000100f8ffffff07000000040000003f00000001000000ffffffff09000000010400000400000000000000080000000001000002000000001000000700000000000000050000000300000006000000010000000100000001000000527c0000080000000200000006000000740c00001f000000ff070000010000000000000095c0000006000000000000000900000001800000ff7f0000000000000900000008000000fdffffff010100000600000000000000ff00000007000000ff0f00000100000005000000ffff0000090000000000000001000000fdffffff300b00001c09000003000000000000000300000003000000ffffff7f000000007ffd00000100000000000000000100004aa80000020001000100000002000100000001000400010005000000010000000100000005000100156f01000000000000000100000001000100010002000100030000000200000001000000be4300000300000002000300010000000000010002000100020001000200010003000000050001000300010001000000020000000400010004000000050001000000010000000000010000000400010004000000030001000300010002000100010001000500000004000000030000000000ec59dcb0000004000000010001000300010002000100030000000300000003000000040000000300000000000000050001000000000000000100000000000300010003000100010000000200010005000100010000000000000000000100000000000400010003000000030000000100010006000000040001000300010001003c4e0100010007000000040000000000000003000100050001000300000000000000040001000100000004000000030000000300010000000000040000000300010002000000020000000200010003000000050000000400010005000000000001000000010005000100040001000300010002000000030000000500010004000100000001000200000083d6010004000000040000000300010000000100000000000500010004000000020001000000010002000000030000000300010001000100030000000000000055000600b84ab4153972764eb4a2c6e8b787b080311e49e0c1e4c33fa417bd8af08a6bf7a7c551687e43ac5e105df5fbc255f20407890116ede174562468d839045dccdfcd27393000faa7634f665b54edee7161e90000000c00070001000000010000000c00080000000000020000009c1002000b000100736b626d6f6400007000028020000200030000000d0000000000001001000000ff0100000f0000000000000020000200ef000000f7ffffff0500000006000000ce0c00000600000000000000200002005dffffff900b000003000000060000000100010003000000000000000a000400aaaaaaaaaa200000041006000425c6bc0739e5a3cfe4f67057df943ac7820ea429a6f9cf3cc1e2d8ed273d042898c7c034c2e5c687b9b2edbc8c887deb9ad1f63bcdac77b94b20cb174c017e026d8fab3825363fbee36bf6e49ab4f5efbd5666fcc7057686f17bfe474eab615145927729c8db864a5572acd1c5216e0d7fd3e29c01167babd1a5a96b9d61354ec2ee106b0526aac83dd8dcf870be01855400dd7fe7adbc15d16e9d8ff52c5c7510e4c892626ac333c16df5ea67021cb59d1bbb2a151eca6832cc89e2015ebb6ca497fc50ad087e8a4cca7b4ff170ef08dde53b6435ec39bdbcb81652317a2b6311561961e42acbfb3936bb5c7555b4a6acc73d1ea3596c6eb8ccaf20c8098a9588341a126fca3f2aadb0b0b70fe0deefefedd4a9e5ff659a6ccca2ac52df5c00a1e2ae0b7e90549d1034460a2649f056ea0796973dd4a231dedf96fe61db5507ef2b69547fb9446a9f46985c305ab58e3d443759b45a9d9c49f845e1cdcb1f47a7070b7c363a7bc43a9342e7fed55ce18363dc57ebac9ec5ef6d2f37c2508c66b444254a1b45c2dabc2f9ba42ef2533a554bef2759e79a00eca6b015fccd8be1527b3a0e7fe2551f6438caf27de39dbd5e72cc1ba462fb78110037c6a886171babbffe3086e23568e602cf8cc31144281c9947272a346c6f3e4f490c686f58a7d1c4559baedacac28c26f7da2001b2b6cc184606ca604ee7fe6e2b1d94e9cc548492d06f8c862d86668606686aa65700568b3324a16dec85f19d9fce81c8e5dee80398e5f0ae359c7a658f822085fac6cb76e3fe0779f0e0168745a53a34cbca883d49b8e780d014a5785a27d0cd5256e01233dbf754c708dc9e9db39e645fda55fa4b703e572a8192b94f25750892a2554b30b17505763ca713816a2503fef4a944989e3db2335778dd29bbbf3f3b2637aa7ff2f793ff0dfb8747e7a6adf5c1ca0184155e99a57d6ce38a4bcaf2bd4838b9780113f569479b627f189dde35e350d69c95f72aad51ebbed1fde7179496ef8d5c0046018d070e8f6e6cedf95f07172d054c4dd4fda9471a47b9cb69f5aca7ae433c486aef9b3129b6ec077d77c29b94aaa9718e930f55f3589220b19f696f3fbde58d56ee6053ef6808c72513fb9753dbe12c1ff7394f6dec913f71d1c2c42467cdd22a6bf15591b7c0fc4be90b1ce5d8c829d2742917d1e4bafbefda7792c55bec1153ef89e0549822305a63da8afa24a2a6367e75b98c56ac937d544fc829a4316fa4f1974e3465a105d20834840456af41c9a38670ed1da7b31559e8fc40dbd573dfe312360edb8b9715472b51a0feffac3cfd9e5393e477425b3b3206015a3870fb35ef76b2c45816e939654f4336ae3b8fbaa3dade4a7eeef9c0b8462c2e874295f09cbe1af5934d747d48db14d8774508dc4937a9349d5e4133b55207545f34e8d5ea50f82f4487564a4827e1bcc31f9e8a54d4fb1b33d0a53ad53568b04f0c6c07a40f8cba011937cc4b296e7043c7c3bfd462227c2c190c4e2f95de7a0616998e3588987954009718a28719bf15a89cecf7184c6bd8c2ae02b52463eba22877ba739742ef78a4c7435f0a6235e8733eda550fe7bd02c9875ab966bd1fc61093bb7012595ad874795b3d52600f94dfa5416bfcdeb68627ff98d3aa68025e2831aab90eb59358db7ee0e22645f8c35544f3888a9136ac58e96b273e847cf5537345d93df04782dca135902d5171998f9a7dc8a8c5d73a60a98c8eb180f4abb4b2cb62b65c486f81eced69fcdfcb6b3975ed687ae7d6b5d3899ab4f35a07d00a4416d7d17f90da4a5402fdb6d71cb2f8d96642cdda43f937459e83019fe2d0b988e526b75314b81205888babd2fda779b9bef263e18aa218adcebbd8856eb64555cbcd64d18e69257913655c9b2bc8db1343d54fd05245bdf643bf51ca56088097381e21ce39735539719e4ace0d5c30bb860f67f0d50f294431b29ec748c33e619f2e4577f08528dc83f20d429f4ce507cc0bddfeeb9a49453c1f61b92de1be4a9796fcb39fb3d1100bb5b882302b319d5bc28bf2708e47b6f672a78132091644cdd4dd23b36606bbc4f6226327222cd2e9ff66949cdb0031f0fdbad183e13e8131ccfc0e67dc0c68dd1193082f367457393c4fd403fc84dbd5eaa9d8b43f4a1d88247655736dcb1bb5ec54f25ab30c08e36a6bb6f6d336868708fe100f8cad2ec8dcf492335ae370aaeec6374e1e5f732bc00501d202b2d2becfb8d95a403c69567c0c5875d71795f6a9d0b1fdb4bf219f0377996eedaa582e666db1fa5fb0b0fd93ce7f15d99b083e6ba00e8e75a60beb0c1a3c020a18900fa706fa1d19c93860969c22f2ef47f68f5a200e0a1086fe350250c1a30a92760c19d08748b5e5743d55a35753eb3161e8c43920cfd67eab42b0e3688c6262d4c62f18a42558a2eb10f3047a6b15568a1500d4dd6aa548f199dcbc9b267cee61752bb4422938b6e742fb58c16c11555b6e425dc96562877fed2daab3948fdca53c887a956658681f1147f2e22cdf7b64bdfb2fa29b0a833da612b5ac02cb573742f371d0e8ad2751e2215ab339d3746b17b45a70aa9f272af671a2cccc930470ff5b6ebbe302d12bd6e21c4e7054efa03cbaae834594b52ad1d064e30e4960b14ae904d78108f8d6f970820874b941ad56e53e8963f23916f2cb6d11794c1e3a8c3f0b83de47fe8c32a2602ef5140fa11cbb7904a297d3872ac37726c40a9c16b268df8fc54f6552cb9ad3df2bc983a5db69b4fc5024c828498c25f59d11e27420398f8f294f6db7ca637f1ddce29cd47311fd2600561429fa77e3da8a955a873cb4c71da0a906e71fde54ac204e597253826d538e0f3f82f220fa435bb556927bcffb8bab24ad1f16eae14a6666a0e75af50baac197f6c4e19c3a6371739671d6647d61abb24f50128336691308871b2d655798f31480105048b5f78f39046469d185dd52e82059f7f28009a8d9fce18192649ef257590a6725b6204af42fc48ae69363c28fb13e4e4826d750d964169e9edc5f8b8e11dc40652679dbaa3fc9b655f64e16112002f2e75da06c5cbdc829527759a23ebb2a4d37a43331a8e7ce71d495d344df012a04371cedfddca093c08219dd4385710455433342cdd522b20c491aae5c00d4c6bc180c3acf381920dfc1481d04d05b59c4e4a08127f572ab7b790b1b3fca8e74bf9699d6c9d18be9e15dc3d22d27a73ce970a0f7b6b2c5668b240ab60974837cd796784d2f8c163f56b4f0ca612ad0efcffa526eacc93b6616739a3003638306b7e617a679c7fdac71ab42e706f3a3e82cce1f5de5026afc46e1a781d0aafcc30ca90a2109e49472a6c79beb40d9680d87a1a51599847e3969fb28caf75a776a525a08e200c559ecbfb9882e6d45cc585104f529a3a710a70a0f6fc40cb2dff3fd9b18604c4f16567d11c6a0ed3e3b167495b32a3470ccbc24980e5b5b7369910c6a851487204823881f57da67fa09d2fa691a2a365e8dea7dc45a9be53c5b6a75d84ba7fb0f8378974ad27ea19517c791292a8586ed73a560eb452664035c8dfc2413959637968e67f47eaeb31251b83837bd5ee066e83d51c1ec8821927973d6bd50cbc13958a1d03f215adad29ccd09fd8b155e11013778e5431a1acfe19a524f172e50489dae7714999b87188d7d7e9bc0a13cd34e3a6039c8e2900ddac3c7807a3fac3f74be7fb3343690102ceee306ed65d760761042a252460fedf97ff868eb0c7b396bd92e74a6e962ed1e58078cbd795697372f513c1b33e1bc96dedc876d09322ac33e0d61a863d98dc3303cb393a79950b37f2803ef18890e973209f49e5b0330524e4f883600b3b57dd0b6c38bd008b7e4d20a1b831a691939581b21406b049b742c895923e529f6189cd09c5126523ad83ace8e98e98fc2970aaeefca96e243b69df8d844e7651f2daac4a058453d7e050763fcc8c38db43c56f05424ba3a81f9a8c06b9e2f0e9297cfb609ff1da1e3ec64eaebee7d5baf9858e515375b4e7832e1f9c00248ea7529a57ef2d03e23c3f31828832fd965158d4c1418718973c7bd3098230bf6093749c433677830f271a600e3896a3eaa148c04855c541df2ee9fccc4336db470dfdcc8794ad797d5b7a0824dc9a5aa4de5f4d53e1e3337405443a8db9323222784a5c3adfbe5530b9c27091fb4e3790dd550cfda46d59c8c2ec35a47c3ee2ff2f11c1ed4af0938e08269bb4a77532e5a2a20cf2bbfa68b9561a4a48c924af06036718a5c104ae41314427f3bf91e309809ea1638e8fc9d756891564c942e8627cbd90b9f6119ff07af00db350633a05aceb039144ab4e06586a18d27bad62fbe968737bf0a7f5b19c86c766c1b06846b6afd0ca701b1fa2d245c84afbd698f1373762a820f9bbe48c21e92cc3ee7664b470226ca92886776ba525b0da732e2ecb7cec583d27652f05b050ef184ac2d8883ab1f818333396a4a12764004e4451047e196011171b22ff42518b2084d878451792f17917927e073651796e7642cc2da637271febf6f0a8f8ea3e2a475b42f02486d44273b9192805aa6bd54ea73893ac434d6c8acacfc033e06fd9a0afe1deb701487c0bc85714c5c9830f061b51b7982275ce838fc22cc91f5e0a7c62badf6154d11ca1a7c0ed6524fe1e35df7be5b3926cacb9095ee29e8ba593badb794befee2003ebd1c2f59fd4f636c07e655d79e67fd9f1abd974a58aca9aad54049f7efa259007683f68ef4f5d090012f7b8406cda8f9270334055f2a1247a6f952aa7d25194da67d01fe5f166a10254c8678f1c7c622d7c6e57bc2b557d66bbf97290dbe19a88db1d3e903c67a90b4bbc01f52612980a1d41d57affc612e8140f4a9a0c6ab396cc02a61d51fd9b45138fdadf7f822e8cf9dead48c8e9bc5c0c9424f27788ae2883337c7bf26c7ed9a7feb78c67bd4bd582d0239803d3028929587163f49902ae59f9a9bcf03396a4e7bddf9b4ea5f5e58923c11cea961d59bae9b0f4fc145901f795065756d8904c9edb052b9c248f61d251936e07204c45c6bcc0e2b146d9f671dc3b1842f7d476ba0a9b1ddd39209769e9f991548c7b79a621076a7ca26a32aaf1f3beee53ff49b3576ba814cb3a4e48998390d2fefeec19939659b3eb6a4969d6cc65babbf40cecec52bb61d87324cad2d02da941d9db17f1b36b205117b023d4c8709ea702e0629551e61cdc99903a67a406070e180151f25bd2cfa62da7acef979db5fb9cbbe94b36bd323d647f7b48249f3a25dc01b9d7f00d3c18aaa5045583d2f9a35cda8ad801015ab4a0135788e3dd6b0ab741a2302979848ff07f6c37814afc042156da3dc69ac405a02dd1593c0b3820b87f2d2cd5729cc7bd9863805a2296490c5025d88fe82c0bf05ff2a08df095711ffb8f9eff8bffde98388b0a574dd9ec6ef37e6a5914301dc1a4c642001b881ca8845888c1ac564934e8fe8eafb324638296db6db929d04b25fa04d7cb131cf8c051f482b8c079316cd21f360eb89ee134ce67ff5738b650a473a84c65480b5e76cf8628dc30eb75b444f7c072a523e0125830657ba9eafa42b399987a533b394456f4f2145c1bacd401cfa356e363101e2b090a42c8bd4f38adeafd458a3eda760c5103f3190ec707cc4f9b3e25f5db2820da11671c79ae3627135c11af28670a08d3fd68ecf2f53d7b20862920350415f2fda4355f8c2c8a1dc141a281111efc355614c7c30587ac6c3077669df8c365dbff080c4504bb54b76710c9230c52a518e44adb0770ca3483937f2c706d1450c00070001000000000000000c0008000100000001000000c42801008c0106000d000100636f6e6e6d61726b00000000ac0002801c000100ff7f0000050000000000002002000000080000003f0000001c000100ff03000005000000060000000700000009000000ff0100001c0001000700000000000100060000000a0100003f000000010000001c00010000100000f31823ad010000000600000007000000020000001c0001000300000000000000000000104d00000009000000030000001c0001003f0000000000000000000000010000000600000003000000b20006003b2c6593d3fe0f54c35bc10ed8c1c774c878b14660cf813b0afe739cb105299f99e6f32334fc6128a92634d609d74ea8b4721079dfebd07bab0d80fe4825e66d231e35591e31600848ec13e994fde1d0bd4930b98b4fe3c75ae238d312e599ae06df247dea565d44d123631451d685ffeecc4e8642db99bcdace2aef50baceea4863ab43635263261a043625f31d580a06451778c678a5721037a84280a52aa0bc32b2710642725c81a4758ab30f00000c00070001000000000000000c0008000300000004000000f01004000800010069707400c80002802400010073656375726974790000000000000000000000000000000000000000000000002400010073656375726974790000000000000000000000000000000000000000000000000800020004000000240001006d616e676c6500000000000000000000000000000000000000000000000000004e0006003f0073656375726974790000000000000000000000000000000000000000000000001f000700f2ae99c0e1245a7719b911763b12d733ccc71478c51f51b1aad5b7789548dd5802a0fb9a000004100600d06c95ccf6c2cb75b931789ee84986e862df107f558f5c22cbefa8d68f8fdc382fc1993bef9d7a849dcfbf6014a67d01aa52421fa54f26ce39d77504e0b9678a665dd9c1ff9017d11bb4878fdd7f7f1b6c188e7afe9809fee4d04a29c0196d6b95148bc060c1dc36bace6cfd4ae52229bad093e37baae8eeb1463923f5e23fdcc9ec26e4eb6e7d3f5c504f8f68c1132a12e75a663cccebe0a8549eed6424c9220ace8fb99451daa29985f73aa415c6446adc63ed67bece0cc56974329311a35b2cfa8f897529cead5667bc9f2ec322c284cbdb2791044fdd24f81dee037713d003710cf8bdba0617ed2ae85d5dea1090cbd382278e690a844e5315d97c8883108162677d5fa21276df62b8c3c48efb6978c0c01aa7ecc75d44686da5037b1c84f8b7a26b4063681eea3fb82188d5efabb96bcc98af8c4f7fae3c69a65437da7963d3fc69547c59fd1ce18be7145a99535be209e642fed93cb789d7a5c4369db17b74607b8ee82d07dfb48e94597aa4bc4f5d6e6ef934d4c2cf69d44b21c7d07887ffa1b6478ffbbe74b13406727b241a7585c6f40fdbbe370d4699b23bab24658d38025e9d61bf0838b35be404ddeb42c87ddfc661d7d180cd394229ec161c08b6c65d0862f172ddfb6460591e63387b177a443c33d19708df73b58717d0428d1c674254429654cf0587ea9b88ab9cd8bc2b91fe21969f58cb89a9dd61256bf7b44df8c66b74e4fdc97c84f807a82a41a8bcc0728ee2077da50812808184eaee7b2978af84e55302af2e0830410a9b2f5995db941ad924494244b7d1db994c2abd909e995fc404159fffee137b0caf70c1412cff094f166a4bd469cc90829369bff0aeffa80e73936d3027c0ee4b1f00908cf3b60aea0af8f6888b1d2335b2d47ee9995e0b73b871918ecae9f29fc97acbca1e46066d5d3496e9b515bfd9068b784f47c68526acdaec95d57631bbc6907e1cb300f6a75fa3d982dd1bfd71498156533e40883e0d8c4e39378d0e0e40d6d949aad8b24ae023233488553b5d3f01683d5f30abb011f3592e031e492bfb547477ce7f202d77fd23a3754ec052cda7a74be52550fc3939dec2c44ef3286ad5d3173a5f843a81aa673dae180aaa03563b3845359b5c8f5de561a74144a4466eba56500ab4d3c377fbcd1c0ca854da9fa1658e984f20f112742ba214bbeb2917fe3fb82d026a495368b4d86a9bff1c31d329be8ba11bc6f6cc03972d5b8bec0c2a800b55ec706bb8fbdbd52b3b0bcf17b732f834197309f537aea913f313e06b404a8148ea5bf366aefa341e20cd182d4dc73372c35f6b7a1621d1ca6f592c616d813589c45e626463c43b9aadcf6c4204df9741e824ae3f5867173695a22e98dfc5c137745d00dcf623855955de86c7d67a00f167ae0954d4583afad06078b4872f316e0b6ae81f3af2e03fc96d91888d77d56ce0df36afb17f877a2bab949524861246fd227c067321ebb0640f31209c301f9d50f6187c0ec797cd7b42261ad18075780733656fd19ae9be12863163d5fdaa93a108a2c8ffe668a4b7442d97ca3264af2fef78bc9b1d08033a26e2dd65f60623a1e76712cfedade013c640c5ed939b4d6da8996cfedf8419b2457a6735a32f8f3b3f731be7040b1735d73b29ad93c7120e3ebd4b39ef7f84ad3f3d9efcdee3e00cef7193669c0eb02ad03dda6e7ac63cc2d9c9b64f7fee614d03c3ec511b81de9838f2d0958a842ae5cdcffccff895a22cf31ca5c7e3843a6c4877ac817824cdab2dcf926bc00c77f81f595291f4c1065fc5e2a03d8a6efad4d7ebf004cff5b695b845d4b4106912fa90fd0fa44078cc1340830f328e9a84ec752cebe862c79a850aaecb40aaaefabfa4e60a6a4609d2e8301a3cb0961cd22bbb448e5730b020291926be9dd4b932e90ddaa5daa47ccac11806c66b753528f684ebd4e2b058b4ab6828577e606bfb2ca4fcb5f59f568a5d2391cf4f7e05b78b161d7cfd32c937aafd067fcda520c9bdf9b434bd86ade362feb76ee80310b36c0f77dc8f3b2c1633ff503176db043b70d6563cdeb40ce64a5642d9483f07aaaf470110032c05685888d096bae6ad4aed390fed6c5c716d4e03f1edab6bb6c035b5e4872fc72caf1536e8545371f7774d4db4b7f603c00f289f937d8da0df2d44104ca719c4668465ca40f9c20e54dd53013859723959ba15f71ca898f0aa16e166d302ee3b8261f0c27fdb7649c430271a0d0bb1a9993bf786e7a5eec50304d9466bbc856a387180f285ef94eb91ed33a470ccbd899ebc8b123861b17e1382a07a95681cb0105ca9f7c8b745f2ef61d38b19105bf5f755d6286f9b786910d00a5ec598e6153da781759fa096e64c81fab131eefc72abd06a0f6cd81ab763334fee5d8a3267194fec05c6b75550a8c7f799a6410ff3ea5b06acbbec4f7fdf3e6152b4bc33e4d8aecdb26811c6f61f1a71f00defa49e7a7211f2f4ce763f005f8f67a045909becacadc11fd8f1b782eb9771de911af7d93aedd2812243d3f6a4b68becb095dae3cdfe9932fa1a9c500afd82eaba21e001295e2f808f78b070a1e117ed8a74f318f1f307c8b1331d1a90e3b163a2fa84deaf540c6746befb8431799ec78f84d6774568c7195265fb3dfb233298fdb0477197376392c37a03e566c41f94749bb3403475d0e7ed711b900e139e893aa9957c239c2d06fb45e077dbd60077027222907c6085f3af462664d074f1692fdef0e726d89cb15037b3b9773c3f40891ead93d5ea91ce09add3ea4d402a94382eae31da67f2cb312c8a789f4be36e89f268a796c32e033a4cbb7a0ce25d08aa5c896f36d15f82b890ccadaa318e6c0b226ed6246f1871c2749708bd59449c5dcc3e7f4faa653007dc016aeffb0e4d6dcd470e0c3a3d03f8fe470e667a0dc8ca65a2c02e2341737b3922470051ff93eee7264859b12ec63b7625fa5ddbf1045ae7e66167f5e4f5741ce9dd5045c83893692734f3e53d61bbb8b573d27e2d55be9244e5a0e4fc44a6f24428820c70dab2c117cbd761775c54d1cee13967fd7807aef46d562b917980dd1c317274e7a078762bf66ce61b087d450a119ef6e30c29ac0c5d8802472ae274492a3d17e0adef9a166167185d8c463bc9a0ed1bac0bfe12bd6a1fe722f37f87c0568bc7d592b1e83e0bdbd230a911241beb4c2b65f4c97fe9bd7dbf32ca7ba45d8b856ba7f5efbf9931f1ac71ff189fdc4da85c637c697ece3f4133dbf08b7ad8ca57acb6cecec5e68d6b54711c855885c86289a2505d61b8a314b8f6295378de8670b82fc9fbaf3e518ee18c533a71593cb8f05fef378c61995a4ca6fc3d7a76858ac57b3694f6d3920f2914bde62b9fd475c1245a538a436121c6675fa48eae59295e6adeeb987512e33917f75f43434e2604f62afc92c2402a07e206d4054270c2505587edfac6e6615df443ad9df8ac1523d8899bfd54db4a794d62c778c93b8a3cbd7290ff2352c64f1b9990ddb2444e6fb0dd5e360cad98caab200649202f640cb020a7b153f1dff0cf10649a18ce6929510f3b466462a708d82beff29cf6c14ca36766ec0f651d03b3e210a2082d0077d4d7d4dfa6bf098e5ec137cb585389e79cec9b1711a429d202e59d5e64250a8240eefd7cf6c0f55e20a3480fd0251446f72b43c5084f6643bc30760ef3ea69cdc1d925851f7422ed6344e3061e046e475d6a11a563850872be6871d48234decf61d903d375223d745a1c9ae8968fd0840f91279b99509b5fca605dec9d14d4372635438d59a43625ad9231828a43a02597e51122db1cf258ce1e7cfa009f4bb354af6ed45c2ddb46536860967a48f2de5c6cf3c23148c088da081b7ceb9cb9b7927b04d5e4c336c294c28bd5063451be4a629f7602e30f102600f2d42a59966185b7cf9b1fa91d71694fed81cc8a4350caca85673cd148c3115670f9033beca558cc1373499768642d95575acd4545e025c371ea410dd8661aa4fc006c466f36f39aff5981318c4bc5826c5eb4efede014f2d63b87d293250732c864fb1d51793ac1aa2c83860e990d37d4d399785610c3b098bfb6112094ed7ce3bf53c760d1c3c6e8e0e4a4b9e46249e3499edae0959e2f9ee960e176af90df741fb1f91872d56cf2e03ead0991891dd83c730dcd040122e482dee786c278e7038abf43340015cf7173bc356998550b98f2808b65c7eae9a641666b57f0033994ff6bf00a1639aff73624530e28e77f97c9d615fb24957d147ae7c8fd4ebaf305cf242c3947e946f562b72cebf216fb063445edaaebe873b29582800712b416ede62ee2ad1cda65c8da42874a9626d8cf3a348d78aa17e9cc36c610e684febe73099f1bb5f5be83f97d98dad8838720ee1c2fd05320579a4c524a61215b5b2a1c852d1e193ff050383b9e2fdb6c50f624645abc69f4e0a1adba92a089c17c1ed9dd0099ef2ae898903f7ebf9f7e5525483c13ddaffdbe5fddfa840e77bcc900a8486ea95c21849bac95aa563f9752d9ef4545c53f109d1832fb2fa5f0c5c2ff2bcb26dcdb8edd27a803f601d5ea065bee228e2d8a916a2775d5f9c4a82701c6df1b265f5bc6a1edbd1c63a4e0b10c9d222b8e3b7419a8614b9086bfb3d988456c34deab4d2259d90a6d1f1eedaae0eb759012c452d12cfa69d17fa985b91093f606d491a0ff9b57470fc35ec65a7b15ad682f20c10a88cd28f922030f259e4155bad7ee450a261cbeb1f9fcd37a478a93793ef0d9ff575dfafb61a8eaff8379f51976c532d8d826366bfc68d28aab49ace90f716fe30976b7740de6f3ecc2c1f027a04761c2c1f315f751fa05b757d378a622457a15ee5a82d14d5626b9235125b4828213a297beb85f2b10593d3e365e5d385b8971135bd733673d7b47c91a3deb62963e7ad14844b5823d3ffefc96d2c5447ced9f3f76e65e151795c367e91a42eaefff4e5753075a79b3a90a70e5107ef507f4f9f63fd71efdda53719181bdd324a7ad49869b41893d8f513cf76181df42abaf4f443d5be955a6e06592e47535d346c467a09e6e2507e842dbc4a985769239598ae84198ae7a1a4eca940f1519583936faba7f034c4d312bf7a5360b2cd0d212da873a97a67af74b8d6e4d59b7a67737c2464dbfb1284c9b00fa89ae3b0620b11b4c8abbb8ec037a87a19830daccbd8d4949d250fafc587d19c491fb25b518f179ab8e2adb07377f0475cadc17c2d83a3898e8d71bac25daaeda126e5585d5a36a3de31003c04d6bb5685bbb8b7b519b7ac14b96756343a9cc3eed7f98a7cb8b1e1c7e02d6560bffbb1cd673d35f34a7d537cfb6651eb496ebe8af262d1f99ecbead354e8b68f06f720b192d7e2752287894a2d581743d71a64a81c6029864b74b61b896702e2e54143c232ca8bc1d3a8d76ec4152eb2a90e7c1810704625ed72f8e167467eaaf0f44a2a3c4acd5ed00fa78a65dfc535acc5b68b63ba355cc53de5c05108a0c000ab43d116ae9d71ef46cb492a8b6c467a12c78e4dd6b7cf94864bdaf1e3e5bae05ab94f09083cca61f4d7294997f16b25df59c4f005ffa8ec7161771cc72fe0c7d1b5b194cd313fa221896693f23d8dab2c78e08441b079cd7929593e439c396245d27d02be51bb8ae7b90734f0c6c92d816ff1444cbfceb34a5f079c0a45c562f6b8d2e141fdf098e4d12317653d15bc3568e947d9619d949962fbaa103bc456eb93d0e64a8b0333c847c66947a9cc22dada9697665dab1c33bd46cd63dbeef853ac0886c2899d6de8894a66e18ae6d2d51aa0fe87025a9bc79045d4b0c00070001000000010000000c00080001000000020000000c0102000b0001006d69727265640000a400028020000200040000000000000005000000ff7f00000104000002000000", @ANYRES32=0x0, @ANYBLOB="2000020009000000bf8d000000000010f7ffffff0500000004000000", @ANYRES32=0x0, @ANYBLOB="20809acf0dc96ca464a8d2609a56d9f22a86f207922d07ffffffff00000005000000d1707daae80bfadc74c8dd71fd4bc1ffffffff01000000364e430ed0a046d236cbe77b00000000b488027c8c5771b57556c61bdff889c6f10bc0c05a20ddd8f0d4a0ddc926c9c7ac1d504619debcc95369cc60006ae3d5226f3de3244736a275e9716a62011c8315efbc0d07b511284a91", @ANYRES32=0x0, @ANYBLOB="20000200070000007fffffff00000020000000000600000002000000", @ANYRES32=0x0, @ANYBLOB="20000200ff000000beffffff0600000000000000623c000004000000", @ANYRES32=0x0, @ANYBLOB="3d000600af29632d55b4bbb0ef5333990bf3f6ab1631743158748d764e28d61f9fd3a57a8ca2a0df88181cac13c351d9d9f62685c73eab69e162f1417c0000000c00070001000000010000000c0008000100000001000000dc001e000c000100736b6265646974005c000280080005000008000018000200010000000900000001000000000000000600000006000700060000001800020007000000ff030000000000208100000000000000080003000c000100080005000600000008000500580e0000580006001a7fe6e4d6c0980368271874ed0c0da8f3b2dec1fb500f6ebded0d4156db593f01f86a10dabafd6ad8f1914674988b687e3033994a9e18d68a55cf08123cbf46a62100fdb3c4026e85990773169f5cb3a6cdd5cc0c00070000000000000000000c000800020000000100000050011700090001006373756d000000003c0002801c000100010000003f0000000000000000000000050000002f0000001c0001000001000000000000010000007f000000010000001d000000e9000600793bb4f850aeb69a22741cad8cae2f9c59c46b47a4d5ae7a7ad6c4e11f0184cb2ee269f6c7d63c27511457cca4388d1b8b0cb5615e198306c8781ad90259cd3701e457facd538270f2451cffa90ad0b473994ea492a81d560e165fa48ea8120d63d937e899fad69e3c27843bdd2e2c56addde8dbbdfd7dbcd30db968b9553528e38ff354bb9b5943229ac0a5da44e1d99b1fa263b666d95b196a5b84a6522e1730d969d0bbb2c82cb260e88f954e33bf407c6c91f7734c2f239d36dae81ec61b39595528e4f54d66019b0931c8bd227017d2f4d77d1054957e4513466b6ae57d741d6202740000000c00070000000000010000000c000800020000000200000070010e000b000100736b626d6f640000700002800600050006000000060005000000000020000200f7ffffff00000000ffffffff26000000040000000b00000000000000200002003500000009000000ffffffffde0000000400000005000000000000000a000300000000000000000006000500000000000600050000000000d800060051983cb9f2902852589e4ffb04e060c9444df6015bbbf6eab39ec7a860f93f0fa5da54847a353fa3bd0608c120de69471a475ce6f9332eae25be140f857fceb7baf250249be99fea8c4bb541cc6cc840a8f334d668c9ae668efafe0b4a2100afc6919b4e30b5852f6725db52e26ab56f88e2a3561ddc9fe096e4ed34491bda5ee6a43f1c06fe2d4c054590142233309d6f63a09187b7fc32c947f6294fd8b6e894b6ce7671f185150b81b3d19a0fb0066855896fbd532f9068ca909a6fafdb41930f334e22a6b24072f4ed8dc535c9aba6fee8fe0c00070001000000010000000c00080000000000030000009c00170009000100766c616e00000000300002801c000200000000000300000004000000000000001700000001000000060003003909000006000300310e000043000600e5576ee122d7615b04d39cfdeb427d4b748dff098c543ed51270dba89587082284cb8df47c420e8f402a19a16f0087da0bdffbf7d3d608b44698ff45229e1c000c00070001000000000000000c0008000200000002000000b8001e000800010069666500100002800a000400bbbbbbbbbbbb0000840006009f16d30f5a6419a46b8d2b077eb7b0dfc1b3b54113c1d3ed4ac0c916c377555458b1373b4ffb2569ae24542c8661301456d939b501b6fe51ea5ccf23c28af7d37004a005b14067cc286b8701df276510188b85f4bb1e07cd647facf613773ed4eaed61d8dac8c45ad62a7113c16f925519a232e540fd8520f71cffa3873aebdc0c00070001000000010000000c000800020000000000000048101e000b000100736b626d6f6400001c0002800a000400aaaaaaaaaabb00000a000400ffffffffffff000004100600af732dc12e07d37a9aaf102cb55f63752d127ac6ba4f591f238ce537c5f9213dbf14615091b4e7e6d994f84918de2edd5f96d9aa3f1d816a530647d1703848667370b70318a1ed640c017caf9b19602c98430bc4906ed28180887ee247bdfa896acae8159c9d140ace8fa0fa66130951bff762c9bce6697ae467d9be5fc6fa36dc505f4fa8263ea5b1ef9d956cccc85b4e5439ce0baba40a13500c1a96f03ce6bfb79147f1f6aa873b60364f2d3b1c87255f37856c2b62b0232b8480c6ad59dd53bdef756f6ad5d0126d8a4ae99c2464329974a407d4864894d05fbde0e06bb8802a9b78241b8b5c7385c99abb73e6a584062671f7ad24886b7408f1e8f408dae683a930f1f70862b1bdd98a84028dceef7639cbe8661c206c3c0c76e0a6148b7e0b632be69a8e03d9fccccb8f33db4315216f66242db2d22956e06cd718e7ba319e6bec1a1ac516f25b28cb9cfe2cc4a98100f72e32425c6594db878e96103402a1f7525c90b3f5209d061b1d8a49e03c959d88ecfdf7da4b5eb52e04a8890040dcebca095acca7810de5de305d70bc87516f0231c2123f739afa1ba868af8538abbfcc4faac178196db425be027e67ed3e6e4226b2a95fc94f21093c78fbe59ee8d78ddac5dc99ec7226a9e975d2ae09da1e2089c5440f851324889cd4f8f388f4236b7877d9264e4611c789094cf3ba605101893ca710512fa3d06820f2939c987e6446e29b8661453ccd4bbe1e7aeea8f23c860a9a3b47f1ba5faa7b1f8c7176b025a8fcf9251f8740c0fc25cf82abd97428142a60069e709e9b8627db33a0ab08ed202102de0a4025c41d1e0a816ed835df4e86f94e0d43a8984569e8dc37d6432eff01acdd0c76c190e7f10c3e467c67b2a1b6b0d68205d5cc153ec809f49de62e3dd3e4d06f44a7ce0c3385e99619872ae88ac51fadc9de561778c4e42d3f5587a31e271f40ef499534099447c9446f503a212c42019850fbe2b88be832d5530bdf3abd78ef6949881c46cabadc01b193734340c101c631866fe3acaeff682ac747c86bf6ff23a99155642f4648c2c32f161c82ec775a60a8b7c5ef0baa4ba743f734c4e270877ed10b84a717f3d41deb8fa893beb2e5c6037ba59c7237de1d62a65bdaaca9d13ca4fbcfe05125e51bb8fa2e458df67f4521a068de50ac475299439f86d48b670a590e6ccc6039c61dff9b44a96d5213310db925f9f105180826d757e8aa0be7cd2c9ad238d75371a22c941c21191a18eca137fb7c8b49a9a74e4c30ba8ad34ed164fff081dd2a63030a5cefa50d2750b07fe6f4edb7870106a244ada1b77bd5947b54443d6e662e3783b9e67a8cb31c76d72c453d97e8c096cce0ee174ce008b46d862c99c77ecf5d3f08d61509d6a4984e30a6460a97c7ccbbee40eac2cfe7a461e3e0a034006e6b5b8a5907de90f93e52f904ea68f2088e12d9d8949b5a2c801eab362cdc49198dcef5a1938d319290bb4a076a4600ca61f7b06c418030d98fb0794d53a54c56fea727ea6a60c0cd5ad978f3c368454951932fd35593d30846ce2aed5b98b0fe48dcd6eaafd7032f387279010069f8b72b63e236cb0ab38fe07dccd89fe899f8548e317192309cc64678a8ba5fa94e04974a298e4141a15ad8e9c7067e2865bed1bb78ad3658fa71e9578bdb2322893251242b5eceb04e4c14cd9ef0765c8fbde054283dfcaefb236ddae53d207545a95c378566c3860275ad5ec9398483135072378390c59951b5d4c9ab4f358d6564fe9a12eda7854d7e72a481b68fdd241ff1b445b460978bae3dbbd9a8c4cd7456f50e79b17847cdda8f735b8e4cb3ac6158c933051b9634ab2763d7371f5eb29c246d09b31a83f77b1aad0214c24647b25ed43bf12e4346625fff9326fc530e761d456f92e069836a5eaf3da83a0b2a087868afb2c0ccee34b0fe9319f805e4574140109acc1f5f820144f72119f33d16a2ba0b75f57df079935b22684ad6c7b75afbea0b1e3c02d96b4147880b848f69bc91796e1c37c0e67c7952a5562b6fb757155bff81c1c004cbf8c4583b5ce9a632ec68d4cb20c4805acef397e17b7498e4b8ab11e80896c85008ac1d1474e6e7d6f153a77fdd9fef16e45946c4cd2dbb9ebf673d1a98e7221ad4ba2d2c5ff0696e5a8ab8fbced5fdfe59986f6d17df2ac13662e76cdb6d1f2992ff17172afbabd9aff4f43d2c6444b2bcb999253474422e38b74b51fc9ee818ae8f70fe9d2e10dc2d441ebcf1278fc94a53491f5a0e146d4d1426b3fd2aebc343df345afdc179d1a79f76717163c1bc58b428102c13b91b5241444d1af86e525c34c0f6421f722637e2a427feb1f03e4b4b616819be9e0d53274cf626567f290ca9760e972dc55e82e6556bdf095cb2e3350af151cee0fcec64ce02f03f07b4a666ad3d0629b7932dff0ad685f1f97744f9c4c133141409152334df7fb0a4fd26a692807b74c92715293e4285cedc41f8c20bc762787e32ff7f94e8203878d8deebd86e298bff77166c9d95140ad07aa5afdd4fb692418d99b85869491aeacb9c4a0fcbfdd4bf7eea745e9567ffdbfa0fcf208c5cd458e35f15b77b40a212a27bf53d1d3985e67ab1c87de4a3b272b2c3fdc4fe64022dabee1aeba30a6f9a334b00e326437900c8b30174bd3fab68a79deba302cf53b7884b5918be3e4bf23518e700dcbd8e6b834e575cda82c520d22a93541fa8de43df2feafc271e79cc9d40600da8afcb1c73494556903c88b57ebd32a5c91d0e4a0bce15c7bfef49680cf08c70161b5a4648ac9e249bf124f00548bf5fb3215e6af8a4c7cc2a3607f23d6f6612b8ff49b7cf148a19b1cff84300208ff1694733cfc41121477a445f391e8880ce9056cc350fab6e9ccba907b4f22b834203dde1e214d215ee5f5619d6c93efeea3a385cc52ef66e84792dc974b8bf342c8a3f96b9772afc5c662c304fe3a62de4947344aa4a360695951a2fb9f6fcc2b90a4af523a6e2eee316ccc6cc466cf02a24efce708835a715ba79076ef4ccba6efa056d3b362a9a6d502b5fd5faa6b403cefe7b2d667d3f96442283feafeeb10d355000bca43b9aa958796bdecf619b92f24eb8ba70234ea7ed4fae4316f1898067b7c33969876ff953ba284cf85ef18da28b97e0f2aa44863822b006c1c0199c9c2ad5759889f0ec3f9460774c3a09b5a1d29384a1da48efcadc26453e89d0ce2c769d570af661813f084f2250a9979d89960d9251aa668c2684a1111d5393711f5f36c821747a718c0bb1bb5a58d8c1492c95751013ddec73504f911bc203c01e4f4c66da522b4d032ad2c79b5f51b4a7ff08bdcea1683ee235087147a6b2f4470df176aac9caefb6cd930897e2d430e295496c39127f84f7219d4072f64a40e0b6305c0a418e115fd563d30a3edb856ccfc5ec25ab8930d54f0659e5cac7405fa2565e8c7c34bad7e6352679a42bce47ba377a6d6db87f4d0aeb1da2cd2699f6f47b63a98a0ff1b15de9e28e17d5afc3e1b78cec6afc2c38ff22cfeae402f35cf5421f2b4bc303c58415e51fa9c1f55a2b9658c4f0e6cb6e05b432a1df8e285e801573b48cd66f0e44a8c4859e96797ef79310a04f4cf2bdc8becedf834e61bb97e119606671257c70edad02a9c3aa8d7aa57f74bf981562b0fbb6041ab88ce3a7978d19d7df08227b438c0081d5bcbf68061b7b656bdd1cfc6ed2e82a50bbfcdbcecdcfefe9e383416f26fac874434b1342002119669698bd8285341b24d80dc4785d3f4f01dfda11f7667f70e185783d7b5f5279c5073e294a1c923e6a66c502893d162208ef5c069eea0012ae5cb3a34da0949212cad407a02b223b5d36193cdddd5d5c50ce4b13d7328a93f74a88c565039951a0c96bb9cbddae4986cfb5311ceeb787d84d5897d41d759ee7d0f1d822a99c6ae207264982c4d3d0b6f6455ae73a935e9a3f45dae384933d728076163b86960233c4bebc87bfb60f1efe304231fc980f48a0ace514b72cd111f1ec5277d4c4a5edaa482c77af6d1b4660d462ef3e0965acd8a9c22848f10dd05a5f772c386761c7aae549c08115d14f01335dc01112dde6aae56b1ebe7b7fc8d952096d1f78357c106824538c7a8e3a94a281dc64759c8af2a14a79dcde0cdc6d04a23988711c3b74302aa212298230ffd5c5a456b17dc6c93210f0e57be4f31265cebf57de7f61ea246577e691b307f669a519f76a5e81c8976710370df76c40cb62a817f0dde048efe9544929d5d3d801b9216f452762ff9ece8cd51b89cff29f7a1e429940b7ad9c5ff1bae73ddf47724836af25d124b9ee5b6ffc68ff9ffdb17cd555a74bdee74a30f78551b9d76875f27ae410a5f4e521a89e16d78bbee2e0e8ce1d67953c819fcfb4fe9b2ec56ee72e71a22087a8b32f5d1296582e10a18b6abab42ff0311bdd5ef4ca2880352eda74eae0c53ed0d5ee8e0e4620ac4acef9c66d60615fcfa373a439fe41cae084713422cd86ea5bf88055d155363d39c70e480151230eb2eda39d007df79699bf159b30526051255ef073b7a393fe3ef068dbe01fbb1c5ae3c6a0e3d810cc9fefed339b8e47c863e42c938c72ae06f6520aaca53b10d1f51a851aec445232cf790544c0e766f1bcbb59e64fd3b90a5a4c167d1974e80b2fa028e8ea1f1486f094f428b73464a12f14b43a49f1cd969993ebbfe9ca41389bf9c18e879238c635b83a8e5a33b1f81929fb216382194804602edaf61336b06f5f9eec864d5f5d5b7414fcd685a43fe2951974ed2a9d83feb6460ad80e0d028fcefcb222e6660f2556fb72a54d12c92f76f5c1e288079a00ac4516fb80e3f9028f92754ec4563eab7b102ac20670aaff7c89875b66cf52bccdd6e908e7727494a425f7043f707c9e0d2afe870bb7d0e65bafcce5f18ac7f0f83641d498b427fb0aa8b1f4cc75e3ff714d28edf2fca1c7404fe45e5e58d9a5f2f95a5213c4c4d8cb097f200601e99a99d4e6101bd89bc39664fff7ca512f9fd41c3ecd3204a266ede5fcf97856ea0a2f11bad3caf1afd461b118ce650307985563b48096b4c58c54792b21dba4d48c033805b75429c3003361d1c69589a407011be3a64a10914009134f6a8d57ec21061a4f4a3b3a98b00e2d2bc2a2d72f50faee323e70c65ced7ef40a2fd5677ccb71ff7cb9fee031bc7e296bae8be5060dd6d2d1c74d98f0b179a7ed473342df03759ebffb0b26d7de2337318c254f15218b63de47299cac2b9f4c3e86f79594c1a3fc488b286e1b27c401378e5d6e811d2978e5b2b6fbe9ebc4baa4960d72c0f6cb6d20229ad784fdea98b6f81479bfb1f837bb894e52cc453ae489e2a029395d17261c27d9fd20bd5921dbd456443ab1a9e1d63834298a886733657cee61eaeeb56f4d912d83290157609ca08d7794da730bf1d98ee74c929a0195f1df31a3f78588ff43c85f17a9b8e8059ecfe19b2796afde41c7251ede864d4e1518c7591e0c46dcca0d3ccc4d9aef62232497b138378433c333466a39d8f7184ad628c7c34523a667a312f570a1b93efbfc6b0010b630e847fb367b2b7d0db0fde7511bbf47652d047845b21aac9b0b6f607c473f315094d231bc96377c10bd7eec83aa8935883a64ec697e4144143968247b934b07add456992bfde92476241ef46c94d7199b1d32c5802b5fe1869d2d9ea7726c3be168a10693d9149060e67a4e53243ac222fac2f9f95148cec23fefb2f3e50633002e039a4d92c4e351261a45d3e247dba869e1ef040fe63833185707b652e225f744e545557f33aa08556915717605289bf80c00070001000000010000000c0008000300000002000000"], 0x9c98}, 0x1, 0x0, 0x0, 0x20000810}, 0x48000) openat$full(0xffffff9c, &(0x7f0000000040), 0x420000, 0x0) r4 = socket$nl_generic(0x10, 0x3, 0x10) r5 = openat$ocfs2_control(0xffffff9c, &(0x7f0000000280), 0x8200, 0x0) ioctl$KVM_RUN(r5, 0xae80, 0x0) r6 = syz_genetlink_get_family_id$l2tp(&(0x7f0000000140), 0xffffffffffffffff) r7 = socket$l2tp(0x2, 0x2, 0x73) sendmsg$L2TP_CMD_TUNNEL_CREATE(r4, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000300)={0x3c, r6, 0x917, 0x0, 0x0, {}, [@L2TP_ATTR_PROTO_VERSION={0x5}, @L2TP_ATTR_CONN_ID={0x8}, @L2TP_ATTR_ENCAP_TYPE={0x6, 0x2, 0x1}, @L2TP_ATTR_PEER_CONN_ID={0x8}, @L2TP_ATTR_FD={0x8, 0x17, @l2tp=r7}]}, 0x3c}}, 0x0) 17:49:19 executing program 2: unshare(0x40000000) r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$tipc(0x1e, 0x5, 0x0) bind$tipc(r1, &(0x7f0000000000)=@name={0x1e, 0x2, 0x3, {{0x43}}}, 0x10) r2 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r2, 0xc15, 0x0, 0x0, {{}, {}, {0x8, 0x11, 0x7f}}}, 0x24}}, 0x0) sendmsg$TIPC_CMD_DISABLE_BEARER(r0, &(0x7f0000000140)={&(0x7f0000000080), 0xc, &(0x7f0000000100)={&(0x7f00000000c0)={0x2c, r2, 0x8, 0x70bd29, 0x25dfdbfe, {{}, {}, {0x10, 0x13, @udp='udp:syz2\x00'}}, ["", ""]}, 0x2c}, 0x1, 0x0, 0x0, 0x20040080}, 0x81) 17:49:19 executing program 3: perf_event_open(&(0x7f0000000040)={0x3, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x400, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={&(0x7f0000000000), 0x3}, 0xc08, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0, 0x0, 0x0, 0x20000000000}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat$kvm(0xffffff9c, &(0x7f0000000280), 0x2000, 0x0) r0 = socket(0x18, 0x0, 0x0) close(r0) r1 = socket$can_j1939(0x1d, 0x2, 0x7) r2 = socket$inet(0x2, 0x4000000000000001, 0x0) ioctl$ifreq_SIOCGIFINDEX_vcan(r2, 0x8933, &(0x7f0000000300)={'vcan0\x00', 0x0}) bind$can_j1939(r1, &(0x7f0000000e40)={0x1d, r3}, 0x18) connect$can_j1939(r0, &(0x7f00000000c0)={0x1d, r3}, 0x18) sendmmsg$alg(r0, &(0x7f0000000140)=[{0x0, 0x0, &(0x7f0000000600)=[{&(0x7f0000000180)="e86762e792b0a569c9c829f439db21219a77caff72d54d1764821d02aa310e8546bc7bf558dedae429390378e15add3bae5fb665cfdde46b84819da9ee9cc36980af43fc8014302cfb1917abcb9b87961c8a6e73ce596e0d49e6b6907ea07d132c5786708cb3453c0949480d7efde54cb4465d64db77dc3639248e15b1fa14dc6539d0b53b64f839091f8a421af81c3bd3fa187a08448fe695ecd57fcbe8873c6dff1a0800"/178, 0xb2}, {0x0}, {&(0x7f0000000100)="bbaecb8eee68", 0x6}, {&(0x7f0000000340)="a1529ce03018c91215fe0e5571109ce0e34c0308c8fe73262c94f3cb4b3cc1f845d67df65f7b8012b2208e7518f50ba16588e9d32903d449fda2d0130fd691d107061f24ae2c9a55a4cd2d856bdb7eb31127573672fce6ed831c46d5a9e99d6eabf5bf1bb54def317a84b2d2a73cb3ac44fc6f42d67239569d21d860282a49379c3844cd7c8196ee101883ebc747dac3fdaa4ba57aa229dd0a9991c5c4d358a4f2d1c414abad65a9fadb", 0xaa}, {&(0x7f0000000400)="f54ee9acac4f35d9ec3e84904bdf13dcb875660926b2d067f6d4e0fea4bfb3a629ab0a891d9374544e0334ae61c220f2e4d5968304bd5fe4390e8a4bf3c14842fd7ef448f2a468570523c99a490fcdf2", 0x50}, {&(0x7f0000000480)="ba2c8b3e0b62c3a1e26843411feba1afd4d7a3f1a237f89d1e75e22a3d1fe95302686f7e24477e6f7ef8df69c59882b0c07842f6d1a6cc45879f181c510aaac67d7f4c3da33c4827245e725108c57081d04e349f250434315bd3dea5e8242562bd38a717461a98e868c83cb5242851fb094fc5d51f4610eae41aa43511793daeeddaf49042b1fa9e3fa54d46ccfb205e6ed7dad31ae82a6e4704fbf2ceba60382f285ea6be475487f1ca8a81478e202680dbb983ae7ad3f5e16e1a65f199b51437647c9bf8237174e74c982407", 0xcd}, {&(0x7f0000000240)="3d0a611c86f775755e11d0162c16", 0xe}, {&(0x7f0000000580)="c527dcbc62cc011976c02f6ca62a33fb5e7b99961e5d9d9ffdedd624a7364faa84579da16124ad0cb5422b08c5d96b47c2701b25a14e9820ae51cb7d8cebbbb818826eeea0e17daffc4cd438269064", 0x4f}, {&(0x7f0000000e80)="9633b1ee69d796b38d819787f3d9a2063bd4ad42274befaae0f9d7e4665dceab5468eacdd0e365c0c169526f12d36c2f64b7ee16493069284fb5850508afc0406f15b940c57d5c9388f2e52197d2874624519f59c20a7290bd2a1d1ba237d6ad1e9317faf7410fb95c1d5dcc27658dfc89ffb53dce3c748a66cd4d6d725f865fd1a3a434d8a338a0336ae4fdcb1c3ff76ed19eab4d799441c1a2a446fa10a7a7530d32790e95c0adc14e51dfe84682d7de9e1ce6868de1fd985d06d9b3099a6ba17fe63fd79aab3b8403c54b1d05c0732746fbc758798e403dcb7390e2fcfaba3089dfe5b5f9ebc81fe47e2ce392f993d712fa824c3ddf61f7f4299674d94b8cd7bcf1d58fde711c3fb80ebd13694e4529d0423b3a5c99dff68a008cd0e57d0a5e41f877dc715abc9dbf0fa59f92e90db7b62b8bb03927a7dfac0a0143e9775ed19caf8c34bf1294666e9fd808711e3e65b79329bebd5cc558217596e10f147e17cb1de5e062238fe2c7d5e398218314505adb3e1f55b461c1218edf9c76992d218d33e699a21a19738bf3b02baa079da5eb3c8d9da0e0eec45cbbe0071be11516b4e2888f681dc9523adf5333d40538ea0508d1b9b4e20679bc6faf4dc02155f2c6c88b2d8b89d4cb52be3f08dc674129e8d46d31a2242c831323ebcbf9be4422a119f1a9c793f331d78187c8477995b353fb54cd019210d0c7308d6aedf41619cf886fe05e0df58e0eaa88e6390027493a89f3ef069ea189e6e341b872e4e7db482ddfdb374970049ec15037553c1babbf66a68491b385c563997bec610304325804c4ab5e8af2256c97c6b95c6be64c727d2d3b310ce6cd8cff0369eeb6b47216a5fd005571e947efa9687084165053c50d4530d00c0389baac3c4066cdd87c3a28ac22851675ca1491a0b309a5fee40fa47d1603ca69cff890fb5febeb77b35f2b010bfa3368e0aa7d53b28f610666b60da49302f8dbf47056818b0a8123cb01000012c86e3f24d7889614dbbcab54a70497c7a216efa219c0309f8f3b38e5ce1dac11694258966711ef070bf02c15c04c676a3d085595d61d7c9870efcca3e5cd0aea8dae535f22a719d3ecc4d2b436b50ffdc25ba55395e85e9180a4a2a72f79618d9a4223a44e31014678e50b2dd71086596978873b772ea34d310f6da48ba51ba0705ad26a448f7c0de6f5da172dda51018bbf82e74e020b9f04e943a33e480d0bad4d4c9fdb49126db734df84b452df599a346774477c794eed8e74914c3de9b68a8daac3995f4bce2973848ea8c6d8e5492df522d516d5892b67769a949bd93c299730d86ed0986c7d2a512e4788eabf67bf8b8a55415f63c70d79d1839bee07b691daa2ca53eea30f1ed27ea7402056c62a3060b2b7250cae08de38878e9e39e1bb897a95c9ebdba72de123215cbb4cf15706b45248180ae92107e1f849dbcf88075b90752a50509da8dad2abb686becd94280fced1f5daf541b7997dc2e39a869727f812d4f13af8c2ce8b7b9dab03b2c7c537c73afdfa04bc07ad47c8b94dec5da95ebdfff7ebc6c7c2c1a0e0721c32802b9a9bd1f96901fd0eaa9f9cbbaf0f814d9191d7e945a02c327d2c313713aa4ed732821c0285519f0f27b2942e17a30a39063598b3ce8b083a33f8f2c17b6a10520d5c144cadd12ea6dd936c7236703b5261ba9bd031f511b4e918c1d70a491065bdd7723a8622329d68d444893f3151077b33beb1e37917613fdfc9cbbe14b91b944f06945571e79a0da65362a56c3cf444f2526b2fb1adedeedd04a4a1044b8b820a9128d7c71ee0404e2367b57f5a38b132a6fba76cf087bdef9ddcddc863fccbe6f7b55ad2c173dbd2abc94f2c0cb8009864e6d097a1955e9e158985b1753940b84274807530a79da927ae14450b5e2d48b74209eb31d2c8f9ae32f75641f2807b3a9868db936aa88eaaca00cb85df4d41b5a5e52ed4b1455fae997e0bb4d4e279ef6869ea42d462f78dbfd255cdf3256484627a6b5dcce73838ed978f2a46b035d9e5e4def8adc5d8139231d63d7a979cd92233a2ac45d3b7e56efdf6f223a164c63bd51a38b4f23125cd845795af4007eadff1ba02b652bab49e237498c54ef7ad0d9f72eea9ad7cc97f564bbe7cb4f39bd4bec9f57642d37f38acd3615fca5ac7dc96962848818ab641ce393524fa53a3fea602184d28c939e2ce750ae58ef39109c2b5e5c20b59dda4936fa206c61fd49bc579a53f1b1cf20190795c6d6bb8be7195d975d91dec3c4f6b403bf0cf0aa41e1bad5754c9f964739f6c4cc0b07561c22c2af212ca12d57ebbfeb2d168aacc8a3610b565165f15699794f495ae1f368f9b26e66d2f0742491f1532ade7b76a29602cb9ce50ffa29071991a05bb60627e6737730a14aff186daf5398903b02cc4abaca1ba4ea54b30c5b201d7166895432430b156e57073957d7e4383b4784d0cdc024db5e123683877d32ec7325c09703191ca2a69e6e8cc412dad9ffae6ab7b99a8ac21a1a03e45ea669ecbd9c94048a6ed6fd209af46b5a8e825c21a662bf9d1a84a11604361c08ade9ef3fc6d8d2a21d89f80226c5379131f7c86184ca47483da1724a1d4259cb84c8b3756ccb4290cac13b3e66e7f986ecd6ea15fbd23ed2342c663b62291de54b7ccbdfb60337be5398e98a3ec6019f3faa4fdf25670082e1cb2b00267efb3461efa7eb75f60275df7849138c2296496a44df42d130507263cbc440b4491c8fa954f7265292beb9f91d4567777adb7d67df8474d72a26b6998093c04c3e2e9dd1be8b9053e48959f3f164948f8704cfb4a914e19cb0d7b72f8e2f7b69309f1a0325326fda3e1b7f71fd6afac6fe23a8e45c6542cb6bf84db8f5db162a2d4805c6c735ed4d3cc905a925672fab533701b27e13567b2eb73eb5333438aee1e43ac9b0bc727e0a20014095d3d428510e6171f8edffbe64d7fe5238ff13ad60a76edace4cb7dc55a43e67184c5a16a547be876c93f2bf1a173f20122568665a62b6bcf2c39fc279aba844c8b48ed6c635f1889dbc6109e5ed97dfd87b761dccf2f8ffddf32f0836033be14debd0ae00b8223e925c09d8cfa25a003379fad2bc4b9def311b8aceb849ae09c16da314894fc0835851e7d0a484699f6e59d50dbeb4d23223da9bdae34ce965cabd44ed9429ee78fed5063d1c87ea555a52da95d6108e1efdf3f6e4f5aa8a2586511fff9dd2907d2df3ade67cd41e3b0ed26af4f0054d4a84a81b48e3526bc4e9a72615428ae7595f5770e0097783cfb4ca41746e5f8221cfef79efdf50fa39caa18b3fd839bc2f01fbf4074ed7e0261bf3f60abbe87b946e7c03b05567f10af4ef9d823a24ca49b4cdfb22941f3ec93932665dfb03ee28741a2086b39476062d42c06cc1b4f139192479f27206b62cf5deb8b4f2ded3eb77dd7349dc880b21d7da924b455e34f0b84f87f95f8e30ed6397f922f7cc4cfae207b8d52b606d2b4b61d0e2cc332874d947076d0d9a8dda700cdfcc226e8b3d5f3807fb0852d80278e888ab1f5de48c7202fff2db763ea480cae3b3d8c88bde20da5afc3f926762ae6ddefd2c2f8ac2ee40d52735781e45e9c705690c1d7be5645456409536dd3b707659e5c06d6d1ccf098f457fa9ebfc58a9e36443d06ca5e4ffab5579537b75345949d8892e143b46b17c2ab796707859361abbdef23cd15161c63212ce49dd8116cae42e64dcd809a1377fb89320e6e61b19baca4ffb818fa20b27eb99b8542058ddb984fcb66c3bda955f3de249b93a65f1b2410c7ea1f59b92841273475c00ca0719b35440dcc9678be811caea3420eb8802e2b439034d602bdd9d9df54929bdaeae6ab653a98ed4b6c2ec5a908f40a3c82b4582f01b4869198108a5df468efee3a5f223f728f9c041fde89032b08dff06559e084dc27fa11b360617678c906178e47c0af72e2a3ab31a9e99a29adca9308b48ba1ebbde791f9d70e371dfb38cdb9ea8cca0d4474c24fad50ec63b85557408aaa29f80f75ad47292591fb6b99d87778e22595b7aeb3cc7ed53b8c5d80eef2ff9074d123f4d9671d541bc06d97925a88e6f6f6ad50f48431630f958bffc0bbae96baf618014fa1ac224580a8e0c305c45a1a94ae9008214af6f697d1e61dd4c19172e765bb5ba74b0381c145ab595d9fbfd2b709df992e15c02a9634ff6c4c3023ef8bf48dd27d15002d5ef23be6dc237bcfdedc13882bffcdc572e7b900ba9a258dec7c3bf5b6a675260bdd2111099d046cc094fb25b8b87ced2c51547a3d674d60f6ef67d0a1e85e3c20a9b103a4ba3d2f8f601f79a6ab43704cb24998460a0b8f5d935e30fee8b0bb4edfcad8c0cce612ee7f2e5e61d27fecdf1ec83590dfd2409f01c5f372d5dad114f141df083669f2f1183e75dbff8c10d90719d51604019f08a35d5e77c6a54b66723a70c0b5f73ca3b530474dbe9e397a5cdeee231c60a54d3bf3b5fed79e36c79df09e1dc1846887e6b0f5a69c4be10b0a46160843ca2478e4a9455fb781ae49dc6683a567a2d426537c7d0720b30b0755a657174cc38de8ce2642bb5afa5d03a7a1adae327df06f250704cd07470e9bc0a3d693802234e8d8fcc506e59a5308777594990a668b51a92691e995cb10b9b23c3c351a65ef8b194e2367e0edf1ad39f2c51673ab5b2c8c672551be96027e2e623232d0fdcd646662dd53808a9803e88c347ff27046284bdeca5fc391b8b0591c4c8d19fbe8c67411c66eec2f7355ce0c0295b21e44d03c05e4d2fcd806d9f3e2a638e9bb461aeb29f2d63d7605dadf1fa71cd6b37382ab4e8f086060cff8310643244b56e2fa8a46291e5cf6bc34b32a97d8b0e76ee9c1fe42624fc301ef1cf43128c7ea7d77fc94f81ecc2d464da5e3be8feb685fdc269775c435f20e0bcaca598235db73f71a2de49a5b3b73789fe801e0fe43b93a39c3aa741f6a8fe802675c5c45ec73097175a9b0ef4dc8b77b83a99aed9ab6e278e11d0ffddb3125ee954a562b7c4ef00c04cddced168c56650c99dcf5ed1cf96ab37c38270a8326aca53ef63a62374fb95ee53b51ebf5f4b9153e55ada0dcaa77ee8edc2145fd80bce947cfa47f5cc364419571d4e99c96d16a26ea9285bc7dc199c97febd95cc5a9494a69e2121534370ca7cd3038f8b08bf6876175194ba63a65d09d19adc3b7237865b227661106e0dc4c77b81bafaec30ac7100b5e446228e8a8fb9e49d5dafce8ba77abf1876fafb571173d21d7f331fcfd6792badc96b67270f7abdd064e667afac2908a710339840e3b69815981463a8a0e7a727e2927617ba33994b5d0568d0b1e41a390f52deec1811255322cd9a1841de1ad735ab9671c45fcd158d2fe928cec6512129a8bbd41d491ab250d8b723bb1f8ffa2a16d8a0bee8ff81ee1fdbc23e69f82d5ea1fad6fd732850d2ac75a5470742bd25c57be2cec836087b5988fa8bf77e188b5a63df57377744e75f65183513530d005e9f52b2a3ce5a34ed20ea0404f8110d6cbe501a96ddc8695b86f60bd153e3fa19c5d5d656432b62712bd28575e437db10918b85028b2b0ab4457f757226e8f5ce5ab3b100871cc08cb1097e00cf325b873ef57942b129ea4e6fe7d6c95f0c1c37494876df043fbcbd6d734e722d8d5c7c0a848ad6eb1b7e66d0e96d076030d1c51c88c6f9c387a8a88895fd6655c6c09705180d79af5c968faed66bb05af8d52f47051114514454f210aca4c085e2470eeb285e872421efdb6bc217755c5ee3932018277c7a0b6f0d8e5f5718d6cf7bdcf522467290370bec9fe9d", 0x1000}], 0x9, &(0x7f0000000340)}], 0x1, 0x1) ioctl$BTRFS_IOC_LOGICAL_INO(r2, 0xc0389424, &(0x7f0000000680)={0x2, 0x8, '\x00', 0x0, &(0x7f00000002c0)=[0x0]}) 17:49:19 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, 0x0) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 292.060618][T10175] IPVS: ftp: loaded support on port[0] = 21 [ 292.117147][T10176] tipc: Started in network mode [ 292.122648][T10176] tipc: Node identity 7f, cluster identity 4711 [ 292.128985][T10176] tipc: Node number set to 127 17:49:20 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, 0x0) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 292.603588][T10175] IPVS: ftp: loaded support on port[0] = 21 17:49:20 executing program 0: r0 = syz_usb_connect$hid(0x6, 0x36, &(0x7f0000000000)=ANY=[], 0x0) syz_usb_control_io(r0, 0x0, 0x0) syz_usb_control_io$hid(r0, &(0x7f0000001440)={0x24, 0x0, 0x0, &(0x7f00000013c0)=ANY=[@ANYBLOB], 0x0}, 0x0) r1 = syz_open_dev$hidraw(&(0x7f0000000880), 0x0, 0x0) ioctl$HIDIOCSFEATURE(r1, 0xc0404806, &(0x7f0000000500)) syz_usb_control_io$hid(r0, 0x0, 0x0) 17:49:20 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, 0x0) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:21 executing program 3: perf_event_open(&(0x7f0000000040)={0x3, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x400, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={&(0x7f0000000000), 0x3}, 0xc08, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0, 0x0, 0x0, 0x20000000000}, 0x0, 0x0, 0xffffffffffffffff, 0x0) openat$kvm(0xffffff9c, &(0x7f0000000280), 0x2000, 0x0) r0 = socket(0x18, 0x0, 0x0) close(r0) r1 = socket$can_j1939(0x1d, 0x2, 0x7) r2 = socket$inet(0x2, 0x4000000000000001, 0x0) ioctl$ifreq_SIOCGIFINDEX_vcan(r2, 0x8933, &(0x7f0000000300)={'vcan0\x00', 0x0}) bind$can_j1939(r1, &(0x7f0000000e40)={0x1d, r3}, 0x18) connect$can_j1939(r0, &(0x7f00000000c0)={0x1d, r3}, 0x18) sendmmsg$alg(r0, &(0x7f0000000140)=[{0x0, 0x0, &(0x7f0000000600)=[{&(0x7f0000000180)="e86762e792b0a569c9c829f439db21219a77caff72d54d1764821d02aa310e8546bc7bf558dedae429390378e15add3bae5fb665cfdde46b84819da9ee9cc36980af43fc8014302cfb1917abcb9b87961c8a6e73ce596e0d49e6b6907ea07d132c5786708cb3453c0949480d7efde54cb4465d64db77dc3639248e15b1fa14dc6539d0b53b64f839091f8a421af81c3bd3fa187a08448fe695ecd57fcbe8873c6dff1a0800"/178, 0xb2}, {0x0}, {&(0x7f0000000100)="bbaecb8eee68", 0x6}, {&(0x7f0000000340)="a1529ce03018c91215fe0e5571109ce0e34c0308c8fe73262c94f3cb4b3cc1f845d67df65f7b8012b2208e7518f50ba16588e9d32903d449fda2d0130fd691d107061f24ae2c9a55a4cd2d856bdb7eb31127573672fce6ed831c46d5a9e99d6eabf5bf1bb54def317a84b2d2a73cb3ac44fc6f42d67239569d21d860282a49379c3844cd7c8196ee101883ebc747dac3fdaa4ba57aa229dd0a9991c5c4d358a4f2d1c414abad65a9fadb", 0xaa}, {&(0x7f0000000400)="f54ee9acac4f35d9ec3e84904bdf13dcb875660926b2d067f6d4e0fea4bfb3a629ab0a891d9374544e0334ae61c220f2e4d5968304bd5fe4390e8a4bf3c14842fd7ef448f2a468570523c99a490fcdf2", 0x50}, {&(0x7f0000000480)="ba2c8b3e0b62c3a1e26843411feba1afd4d7a3f1a237f89d1e75e22a3d1fe95302686f7e24477e6f7ef8df69c59882b0c07842f6d1a6cc45879f181c510aaac67d7f4c3da33c4827245e725108c57081d04e349f250434315bd3dea5e8242562bd38a717461a98e868c83cb5242851fb094fc5d51f4610eae41aa43511793daeeddaf49042b1fa9e3fa54d46ccfb205e6ed7dad31ae82a6e4704fbf2ceba60382f285ea6be475487f1ca8a81478e202680dbb983ae7ad3f5e16e1a65f199b51437647c9bf8237174e74c982407", 0xcd}, {&(0x7f0000000240)="3d0a611c86f775755e11d0162c16", 0xe}, {&(0x7f0000000580)="c527dcbc62cc011976c02f6ca62a33fb5e7b99961e5d9d9ffdedd624a7364faa84579da16124ad0cb5422b08c5d96b47c2701b25a14e9820ae51cb7d8cebbbb818826eeea0e17daffc4cd438269064", 0x4f}, {&(0x7f0000000e80)="9633b1ee69d796b38d819787f3d9a2063bd4ad42274befaae0f9d7e4665dceab5468eacdd0e365c0c169526f12d36c2f64b7ee16493069284fb5850508afc0406f15b940c57d5c9388f2e52197d2874624519f59c20a7290bd2a1d1ba237d6ad1e9317faf7410fb95c1d5dcc27658dfc89ffb53dce3c748a66cd4d6d725f865fd1a3a434d8a338a0336ae4fdcb1c3ff76ed19eab4d799441c1a2a446fa10a7a7530d32790e95c0adc14e51dfe84682d7de9e1ce6868de1fd985d06d9b3099a6ba17fe63fd79aab3b8403c54b1d05c0732746fbc758798e403dcb7390e2fcfaba3089dfe5b5f9ebc81fe47e2ce392f993d712fa824c3ddf61f7f4299674d94b8cd7bcf1d58fde711c3fb80ebd13694e4529d0423b3a5c99dff68a008cd0e57d0a5e41f877dc715abc9dbf0fa59f92e90db7b62b8bb03927a7dfac0a0143e9775ed19caf8c34bf1294666e9fd808711e3e65b79329bebd5cc558217596e10f147e17cb1de5e062238fe2c7d5e398218314505adb3e1f55b461c1218edf9c76992d218d33e699a21a19738bf3b02baa079da5eb3c8d9da0e0eec45cbbe0071be11516b4e2888f681dc9523adf5333d40538ea0508d1b9b4e20679bc6faf4dc02155f2c6c88b2d8b89d4cb52be3f08dc674129e8d46d31a2242c831323ebcbf9be4422a119f1a9c793f331d78187c8477995b353fb54cd019210d0c7308d6aedf41619cf886fe05e0df58e0eaa88e6390027493a89f3ef069ea189e6e341b872e4e7db482ddfdb374970049ec15037553c1babbf66a68491b385c563997bec610304325804c4ab5e8af2256c97c6b95c6be64c727d2d3b310ce6cd8cff0369eeb6b47216a5fd005571e947efa9687084165053c50d4530d00c0389baac3c4066cdd87c3a28ac22851675ca1491a0b309a5fee40fa47d1603ca69cff890fb5febeb77b35f2b010bfa3368e0aa7d53b28f610666b60da49302f8dbf47056818b0a8123cb01000012c86e3f24d7889614dbbcab54a70497c7a216efa219c0309f8f3b38e5ce1dac11694258966711ef070bf02c15c04c676a3d085595d61d7c9870efcca3e5cd0aea8dae535f22a719d3ecc4d2b436b50ffdc25ba55395e85e9180a4a2a72f79618d9a4223a44e31014678e50b2dd71086596978873b772ea34d310f6da48ba51ba0705ad26a448f7c0de6f5da172dda51018bbf82e74e020b9f04e943a33e480d0bad4d4c9fdb49126db734df84b452df599a346774477c794eed8e74914c3de9b68a8daac3995f4bce2973848ea8c6d8e5492df522d516d5892b67769a949bd93c299730d86ed0986c7d2a512e4788eabf67bf8b8a55415f63c70d79d1839bee07b691daa2ca53eea30f1ed27ea7402056c62a3060b2b7250cae08de38878e9e39e1bb897a95c9ebdba72de123215cbb4cf15706b45248180ae92107e1f849dbcf88075b90752a50509da8dad2abb686becd94280fced1f5daf541b7997dc2e39a869727f812d4f13af8c2ce8b7b9dab03b2c7c537c73afdfa04bc07ad47c8b94dec5da95ebdfff7ebc6c7c2c1a0e0721c32802b9a9bd1f96901fd0eaa9f9cbbaf0f814d9191d7e945a02c327d2c313713aa4ed732821c0285519f0f27b2942e17a30a39063598b3ce8b083a33f8f2c17b6a10520d5c144cadd12ea6dd936c7236703b5261ba9bd031f511b4e918c1d70a491065bdd7723a8622329d68d444893f3151077b33beb1e37917613fdfc9cbbe14b91b944f06945571e79a0da65362a56c3cf444f2526b2fb1adedeedd04a4a1044b8b820a9128d7c71ee0404e2367b57f5a38b132a6fba76cf087bdef9ddcddc863fccbe6f7b55ad2c173dbd2abc94f2c0cb8009864e6d097a1955e9e158985b1753940b84274807530a79da927ae14450b5e2d48b74209eb31d2c8f9ae32f75641f2807b3a9868db936aa88eaaca00cb85df4d41b5a5e52ed4b1455fae997e0bb4d4e279ef6869ea42d462f78dbfd255cdf3256484627a6b5dcce73838ed978f2a46b035d9e5e4def8adc5d8139231d63d7a979cd92233a2ac45d3b7e56efdf6f223a164c63bd51a38b4f23125cd845795af4007eadff1ba02b652bab49e237498c54ef7ad0d9f72eea9ad7cc97f564bbe7cb4f39bd4bec9f57642d37f38acd3615fca5ac7dc96962848818ab641ce393524fa53a3fea602184d28c939e2ce750ae58ef39109c2b5e5c20b59dda4936fa206c61fd49bc579a53f1b1cf20190795c6d6bb8be7195d975d91dec3c4f6b403bf0cf0aa41e1bad5754c9f964739f6c4cc0b07561c22c2af212ca12d57ebbfeb2d168aacc8a3610b565165f15699794f495ae1f368f9b26e66d2f0742491f1532ade7b76a29602cb9ce50ffa29071991a05bb60627e6737730a14aff186daf5398903b02cc4abaca1ba4ea54b30c5b201d7166895432430b156e57073957d7e4383b4784d0cdc024db5e123683877d32ec7325c09703191ca2a69e6e8cc412dad9ffae6ab7b99a8ac21a1a03e45ea669ecbd9c94048a6ed6fd209af46b5a8e825c21a662bf9d1a84a11604361c08ade9ef3fc6d8d2a21d89f80226c5379131f7c86184ca47483da1724a1d4259cb84c8b3756ccb4290cac13b3e66e7f986ecd6ea15fbd23ed2342c663b62291de54b7ccbdfb60337be5398e98a3ec6019f3faa4fdf25670082e1cb2b00267efb3461efa7eb75f60275df7849138c2296496a44df42d130507263cbc440b4491c8fa954f7265292beb9f91d4567777adb7d67df8474d72a26b6998093c04c3e2e9dd1be8b9053e48959f3f164948f8704cfb4a914e19cb0d7b72f8e2f7b69309f1a0325326fda3e1b7f71fd6afac6fe23a8e45c6542cb6bf84db8f5db162a2d4805c6c735ed4d3cc905a925672fab533701b27e13567b2eb73eb5333438aee1e43ac9b0bc727e0a20014095d3d428510e6171f8edffbe64d7fe5238ff13ad60a76edace4cb7dc55a43e67184c5a16a547be876c93f2bf1a173f20122568665a62b6bcf2c39fc279aba844c8b48ed6c635f1889dbc6109e5ed97dfd87b761dccf2f8ffddf32f0836033be14debd0ae00b8223e925c09d8cfa25a003379fad2bc4b9def311b8aceb849ae09c16da314894fc0835851e7d0a484699f6e59d50dbeb4d23223da9bdae34ce965cabd44ed9429ee78fed5063d1c87ea555a52da95d6108e1efdf3f6e4f5aa8a2586511fff9dd2907d2df3ade67cd41e3b0ed26af4f0054d4a84a81b48e3526bc4e9a72615428ae7595f5770e0097783cfb4ca41746e5f8221cfef79efdf50fa39caa18b3fd839bc2f01fbf4074ed7e0261bf3f60abbe87b946e7c03b05567f10af4ef9d823a24ca49b4cdfb22941f3ec93932665dfb03ee28741a2086b39476062d42c06cc1b4f139192479f27206b62cf5deb8b4f2ded3eb77dd7349dc880b21d7da924b455e34f0b84f87f95f8e30ed6397f922f7cc4cfae207b8d52b606d2b4b61d0e2cc332874d947076d0d9a8dda700cdfcc226e8b3d5f3807fb0852d80278e888ab1f5de48c7202fff2db763ea480cae3b3d8c88bde20da5afc3f926762ae6ddefd2c2f8ac2ee40d52735781e45e9c705690c1d7be5645456409536dd3b707659e5c06d6d1ccf098f457fa9ebfc58a9e36443d06ca5e4ffab5579537b75345949d8892e143b46b17c2ab796707859361abbdef23cd15161c63212ce49dd8116cae42e64dcd809a1377fb89320e6e61b19baca4ffb818fa20b27eb99b8542058ddb984fcb66c3bda955f3de249b93a65f1b2410c7ea1f59b92841273475c00ca0719b35440dcc9678be811caea3420eb8802e2b439034d602bdd9d9df54929bdaeae6ab653a98ed4b6c2ec5a908f40a3c82b4582f01b4869198108a5df468efee3a5f223f728f9c041fde89032b08dff06559e084dc27fa11b360617678c906178e47c0af72e2a3ab31a9e99a29adca9308b48ba1ebbde791f9d70e371dfb38cdb9ea8cca0d4474c24fad50ec63b85557408aaa29f80f75ad47292591fb6b99d87778e22595b7aeb3cc7ed53b8c5d80eef2ff9074d123f4d9671d541bc06d97925a88e6f6f6ad50f48431630f958bffc0bbae96baf618014fa1ac224580a8e0c305c45a1a94ae9008214af6f697d1e61dd4c19172e765bb5ba74b0381c145ab595d9fbfd2b709df992e15c02a9634ff6c4c3023ef8bf48dd27d15002d5ef23be6dc237bcfdedc13882bffcdc572e7b900ba9a258dec7c3bf5b6a675260bdd2111099d046cc094fb25b8b87ced2c51547a3d674d60f6ef67d0a1e85e3c20a9b103a4ba3d2f8f601f79a6ab43704cb24998460a0b8f5d935e30fee8b0bb4edfcad8c0cce612ee7f2e5e61d27fecdf1ec83590dfd2409f01c5f372d5dad114f141df083669f2f1183e75dbff8c10d90719d51604019f08a35d5e77c6a54b66723a70c0b5f73ca3b530474dbe9e397a5cdeee231c60a54d3bf3b5fed79e36c79df09e1dc1846887e6b0f5a69c4be10b0a46160843ca2478e4a9455fb781ae49dc6683a567a2d426537c7d0720b30b0755a657174cc38de8ce2642bb5afa5d03a7a1adae327df06f250704cd07470e9bc0a3d693802234e8d8fcc506e59a5308777594990a668b51a92691e995cb10b9b23c3c351a65ef8b194e2367e0edf1ad39f2c51673ab5b2c8c672551be96027e2e623232d0fdcd646662dd53808a9803e88c347ff27046284bdeca5fc391b8b0591c4c8d19fbe8c67411c66eec2f7355ce0c0295b21e44d03c05e4d2fcd806d9f3e2a638e9bb461aeb29f2d63d7605dadf1fa71cd6b37382ab4e8f086060cff8310643244b56e2fa8a46291e5cf6bc34b32a97d8b0e76ee9c1fe42624fc301ef1cf43128c7ea7d77fc94f81ecc2d464da5e3be8feb685fdc269775c435f20e0bcaca598235db73f71a2de49a5b3b73789fe801e0fe43b93a39c3aa741f6a8fe802675c5c45ec73097175a9b0ef4dc8b77b83a99aed9ab6e278e11d0ffddb3125ee954a562b7c4ef00c04cddced168c56650c99dcf5ed1cf96ab37c38270a8326aca53ef63a62374fb95ee53b51ebf5f4b9153e55ada0dcaa77ee8edc2145fd80bce947cfa47f5cc364419571d4e99c96d16a26ea9285bc7dc199c97febd95cc5a9494a69e2121534370ca7cd3038f8b08bf6876175194ba63a65d09d19adc3b7237865b227661106e0dc4c77b81bafaec30ac7100b5e446228e8a8fb9e49d5dafce8ba77abf1876fafb571173d21d7f331fcfd6792badc96b67270f7abdd064e667afac2908a710339840e3b69815981463a8a0e7a727e2927617ba33994b5d0568d0b1e41a390f52deec1811255322cd9a1841de1ad735ab9671c45fcd158d2fe928cec6512129a8bbd41d491ab250d8b723bb1f8ffa2a16d8a0bee8ff81ee1fdbc23e69f82d5ea1fad6fd732850d2ac75a5470742bd25c57be2cec836087b5988fa8bf77e188b5a63df57377744e75f65183513530d005e9f52b2a3ce5a34ed20ea0404f8110d6cbe501a96ddc8695b86f60bd153e3fa19c5d5d656432b62712bd28575e437db10918b85028b2b0ab4457f757226e8f5ce5ab3b100871cc08cb1097e00cf325b873ef57942b129ea4e6fe7d6c95f0c1c37494876df043fbcbd6d734e722d8d5c7c0a848ad6eb1b7e66d0e96d076030d1c51c88c6f9c387a8a88895fd6655c6c09705180d79af5c968faed66bb05af8d52f47051114514454f210aca4c085e2470eeb285e872421efdb6bc217755c5ee3932018277c7a0b6f0d8e5f5718d6cf7bdcf522467290370bec9fe9d", 0x1000}], 0x9, &(0x7f0000000340)}], 0x1, 0x1) ioctl$BTRFS_IOC_LOGICAL_INO(r2, 0xc0389424, &(0x7f0000000680)={0x2, 0x8, '\x00', 0x0, &(0x7f00000002c0)=[0x0]}) 17:49:21 executing program 2: getxattr(&(0x7f0000000280)='./file1\x00', &(0x7f0000000180)=ANY=[@ANYBLOB='tted.upPerdir\x00\x00\x00', @ANYRES64, @ANYRESDEC], &(0x7f0000000740)=""/232, 0xe8) mkdir(&(0x7f0000000240)='./file1\x00', 0x0) mkdir(&(0x7f00000000c0)='./bus\x00', 0x0) mkdir(0x0, 0x0) r0 = perf_event_open$cgroup(&(0x7f00000001c0)={0x1, 0x70, 0x0, 0x6, 0x9, 0x80, 0x0, 0x3, 0x2, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x5, 0x2, 0x0, 0x1409, 0x65, 0x2ba4, 0x1, 0x6, 0xffff, 0x4}, 0xffffffffffffffff, 0xb, 0xffffffffffffffff, 0x0) close(r0) mount$overlay(0x400002, &(0x7f0000000140)='./file1\x00', &(0x7f0000000100), 0x0, &(0x7f0000000400)=ANY=[@ANYBLOB="757070657209dcc828000000000000072c6c6f7765726469723d2effff75732c776f726b4369723d2e2f666b6c65302c696e6465783d6f6e52f6d12df2158fca9b565915f68a02999f28a62a39a6ab4393776c9e89640597ee3ae48c0f4679a5c249fb6060fffff593ab7466014988193b42fbde991bb30dda56"]) tkill(0x0, 0x200001e) ptrace$setregs(0xd, 0x0, 0x0, &(0x7f0000000080)) getpgrp(0x0) r1 = socket$packet(0x11, 0x2, 0x300) r2 = dup(r1) lstat(&(0x7f00000003c0)='./file1\x00', &(0x7f0000000540)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) mount$9p_tcp(&(0x7f0000000040), &(0x7f0000000500)='./file0\x00', &(0x7f0000000380), 0x880844, &(0x7f0000000640)={'trans=tcp,', {'port', 0x3d, 0x4e21}, 0x2c, {[{@posixacl}, {@cache_fscache}, {@cache_fscache}, {@dfltgid={'dfltgid', 0x3d, r3}}], [{@dont_hash}, {@obj_user={'obj_user', 0x3d, 'ipip\x00'}}, {@smackfsroot={'smackfsroot', 0x3d, '!:!'}}, {@smackfshat={'smackfshat', 0x3d, 'trusted.'}}, {@fsuuid={'fsuuid', 0x3d, {[0x39, 0x32, 0x33, 0x62, 0x30, 0x55, 0x32, 0x31], 0x2d, [0x30, 0x63, 0x0, 0x61], 0x2d, [0x32, 0x34, 0x62, 0x38], 0x2d, [0x63, 0x61, 0x65, 0x39], 0x2d, [0x66, 0x31, 0x62, 0x33, 0x33, 0x38, 0x64, 0x39]}}}, {@appraise_type}, {@smackfstransmute={'smackfstransmute', 0x3d, 'upperdir'}}]}}) r4 = socket$nl_route(0x10, 0x3, 0x0) r5 = socket(0x1, 0x803, 0x0) setsockopt$inet6_tcp_TCP_QUEUE_SEQ(0xffffffffffffffff, 0x6, 0x15, &(0x7f0000000000)=0x8000, 0x4) getsockname$packet(r5, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r4, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000300)=@newlink={0x70, 0x10, 0x401, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x40, 0x12, 0x0, 0x1, @ipip={{0x9}, {0x30, 0x2, 0x0, 0x1, [@IFLA_IPTUN_REMOTE={0x8, 0x3, @loopback}, @IFLA_IPTUN_PROTO={0x5, 0x9, 0x89}, @IFLA_IPTUN_LOCAL={0x8, 0x2, @rand_addr=0x64010102}, @IFLA_IPTUN_PMTUDISC={0x5, 0xa, 0x1}, @IFLA_IPTUN_TOS={0x5, 0x5, 0x36}, @IFLA_IPTUN_COLLECT_METADATA={0x4}]}}}, @IFLA_CARRIER_CHANGES={0x8, 0x23, 0x6}, @IFLA_MASTER={0x8, 0xa, r6}]}, 0x70}}, 0x20000400) ioctl$PERF_EVENT_IOC_ENABLE(r2, 0x8912, 0x400200) 17:49:21 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r1, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r2, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:21 executing program 0: io_setup(0xe5d, &(0x7f0000000080)=0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = eventfd(0x81) r2 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r3 = openat$mice(0xffffff9c, &(0x7f0000001b40), 0x80000) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) r5 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r5, 0x0) preadv(r5, &(0x7f0000000280), 0x18, 0xd9f, 0x0) io_submit(r0, 0x8, &(0x7f0000001c40)=[&(0x7f0000000640)={0x0, 0x0, 0x0, 0x2, 0x0, 0xffffffffffffffff, &(0x7f0000000580)="9c0d02903af0445f8e38ca27fab7e1a9e87fd67279855697e1ec17bf12377bc690b2ff9041dc688628ea538961b35f9395b19fea10ce45debd731b00b01b4338e4f4534dfcaaee2ea115d830e6b62b51a9793557adba87fa8ae90cf99542d0ed43eaf52d12003ac2abc581340acb8e0e588d0a2d3490af65af3969dd1ffe0ca46ed9124fe6dbf28a9fd094ff4fbcd159670872d20e1918bfef75d12a73533776e2956d63aacbd0f4a75a544b9c94419fd22c3d", 0xb3, 0x7}, &(0x7f0000000740)={0x0, 0x0, 0x0, 0x1, 0x0, 0xffffffffffffffff, &(0x7f0000000680)="5d9242acbf15c886f77c82fe87bfed039884a6f2af9ba478532e6980d5b918b61fb3e94c34730b5ed3dc859a8bc3c359953aadb523bc62b8cfd2f54a66bb26038c9002edbae152f52985f7ecc865011713e795cea418550980aac9baf5d8f11a5336176d1b5be73960e7ffff357a589ec78b423ea34935686fabfa37e27cd0e19335fe706387769683253db3ccc1e9d707470b7f97bacddcb9786a59e1e16e33c0ec37133b46edbef7a481e39fc6e3d13a5f52694b048a93ed8df2", 0xbb, 0x2000000000, 0x0, 0x2, r1}, &(0x7f0000000880)={0x0, 0x0, 0x0, 0x2, 0x3, 0xffffffffffffffff, &(0x7f0000000780)="e3802a90a1d907e710f248d24e9842345150fd134be7537a765f434f1dcdc37c93c29e880963f2643f0b08ab11d87313659fa1be4825a9c12b07f504019b8bd23597754218a21faef93fa470ebffd5a27cf23db4755f691c1d8e70957faae5ddd58b0ea7903d81d4724f3d75cf770c6d989d57f2ac0abb8eea6a94fcf31aee12270f25ce4cbeb1112fbb1c55e819ee1fd14269611e72d0410050547206951160bfdd4559cd93507be6c682c2c762bf3155c522e0c887c5538a16884f4c3c77e1924f028ae2ad88fce0571d77f500dc3df35dba489047a9b1b0bf463d63e4667c1866ea578da4f9ae954964d4be", 0xed, 0x6, 0x0, 0x1}, &(0x7f0000000900)={0x0, 0x0, 0x0, 0x6, 0x1ff, 0xffffffffffffffff, &(0x7f00000008c0)="255642ef01ce2586364dcd927dc0614b919398d803d9b4a05948c2ab5357dca5b8b705bad075e0", 0x27, 0x7}, &(0x7f0000001940)={0x0, 0x0, 0x0, 0x3, 0x1, 0xffffffffffffffff, &(0x7f0000000940)="eee0c03fc5ef0b9b081223cc8361244f6f2f08424dd86d2d809a0c9eaecb8879fdb53f87cb47723c09d2652292dda13c3ea30c5c05c3aae9acb34b351c2196142cc3ddb7360cca0e52ca4f7912a8bb4b66bf738db88c2e9b36e20b1bfae7588335ab677dd4d17270ad0d6df799da971b2f9046df2c095d0dc8a62309c64dcf590287dcdc2b662bf709bc4a8ba4e08c19e647c121d414120978a936df91cbb97a48378335aea65ab3951e9091c78a620162030bc51d25c13b2e77f0825158266b4e53a5a7657cd368c1e55d71cf0a6ff4db049b27f47e1500598cd47a2798f35c28f876330fae099f6d3e63659d61eaa576419c5ba9ae20a99abb4a059248ea0fb9244d8c17ec5ccfcbdb6b1f2f44799eb4e145004bcd9b1c737b26886b241f6d7418f0344a43dc6ec80c6c4235240ea11b1c6438c66fb85d3cdf75e215cf92169ba7c02aeb75592a93929120c12bc92751ad974f07748299865f38e8176a9b6856214e5ef74c8821b525f4322b20b6a441e7bd9739f1275b899c2c3f3a023bb58d00d14730807b63a3da06e3e70ba79ced5303c2a3ae29f25ac9eda050c7c155a1ab9b4c385d645f45f08bc82e94569b28d033638dcc1d50b4715c83ef82d2f2480bb5bc846363242094f408e93bb0b31047023bf1c9509141e902c76865ca7a023017c662f5b0b3b7a063d257e869c0877cc6ae5a0257ef1dc4bf0008a81f6ccd9b98df4baa7d452fd108189810084b5a4bb7e6651bc6107025232dca829c56436d984aba1c437c0b6db729cafb981da973a9d15258c296e44b29a39c3ac1495666d2ca8621723174f021c0b9d9a262eab15f69379d7370181fff3711557db70711ed5d3f120f8aabaa2bbb493bb90a975e649c37657a09bbc2c3a3feb499b359816e89deab2d312defbfbe1ddb3f79589a5dd60ada6a2817ee0f23047e20d45fca0b39cf6dbd7bbdaa42ff480c122815153953d966f89b41500b85b087178b47904d0735ff3ccb5d2169f55e869d02838febe1c6e2702bca439ebb56b895b23bec242ea21cc15a4e8b75a7a8f57fb0c2c452ecda74fe285ced7ff49d1063b1f70ab27555b5b6ec0dad55878a6aaa8170d961b5050ce6acbd20545971be7c569f00f31d62398387f6ce96f2373a77775adf958cc9cf1c9c08e0e8dfc2be58c01520a7b97f5bf830d447b0c70487e0378bf2c27c79a7ca0cedbff6b308a3e85c86383e7756936d3e4c833f2f7b8af332984d11392adb2f8306d23296e069a82e238893afe013d342162805f9c70d55b5cfbdb935f996096910a2d2d48eaff2db2119c4484c6305febba80ed04fcea67281f71a12ad520643daf592596ae474684a647430a06287aec0368336a5672c5973042787f85d5bc6678961a3f8993c2b0254d61b6242461405d12786c7fe5482063eafc7dccb0f1b233b2cc66e6a4a215c5d108a493fd34418e8b6ae89f3ab8b822a6e3f4172056a5e6a3145095d5df38d2595e51868310641b2283d9521728c9ea13be4e7b3cac571f896ff5802b479a772a5f7827982d33d6bb23fc72b7edf3ddbce02bcd74b15f49347b96f23f4aed323d20d26f7ecfadef6d78ec310ee42a73e1ea3921ca4dd636fb10ab218e037a03198cc556d573bf1befbfd92788652a1cd5ae507a3a9b78e3fcba2348856ab1ca28840566bc87d5931638bad3112dd8d8182fbe6bfd41e1ebbe01f25cc85ae836f545a25bdddb2ed06b0dc9523ef0bc7ae01ab961a6b427184d981eb3f1b86dae18e0532258e89b527487e7f371395c55f2be1f6cc6a5d0215f42b04e7d2b44d11787f349946ccc5653b75d28192603695b0eaf142da1595246e6735a07ff21cd032a33f7d3e628cc85f8fcca65fe08278065cc78993fc4ae06d7ff52bd3ae79c2d0de00a90d1851e6a03ef4d7b3763df95f806c81a2dfc1bc604f4f2bdd76eaef5023b772c459c24a1bd22419a4648734d9d71a0ca4aa1a3350484c3f678d439b5c81dc16a49aacfa62e945298f3b1635bd619b710a5f1bd99dbebbea399c724887d941ffd47dff3e06cf2915c0e29dde1e02e72078b53c4fe56b2f968d9915cbf9d88f54fe21a25dea5caa19ff1dfb95a87f355440e384209c91463d5212945b5de1be695d816b777ea18e40f4eb449416879c3b8f9f2b88fbd72d711335ae8aa87745fbcb260611e544faaa5954ac672425d13bdc21c158bfa55946eadcc4abc6514c78f19b4b185b13ce61faf2f743572a019a43a6eced6c572908d262355993689e0d9d99cd7166347e4aaddaec2989aca90fc431547dad0ea93ff90fd44e84a9bf40c6bac7786ae943fbb65fa1582e9196bcdd22c3f48f252f820c31891d1af23f4b12e55c4270e569bfcc062f7f7f4334a7db159342f9baebf9a337aebb2d40db1e4547cbcd1965e93aca7678404a43b18c14c91147f876f31ec3930570ec45fad41a56ac14dea87c1dd935d7346f8cf53431629053679d748a509f4e9362fdec8c8f32a1801d2e09cc8ff3e0ee4065856821ebc13619b22ae5eb108dccd46cf364b8e9d18e13a9083f4ea0b730868e371919e9e1e6310b117f58ddc401c14ae2aeeeca27723554c94852b28bc5565c6bb8bb631f259a4653e9e7d4d3854989509023f9cd356beb8f3d9d97c1603b8a35086ba0aec29d6b1c50fffaec64a9be46efdc8a9790f27f903b9f2fa4853875eb99555bdf35dfa08ac2edd230d3fc6d0fd51f69eb22845bcc8f638faa9079e27cd3475dc6c9c266103d6d45c8005d80ec42c02cfc3381ee929e70e1310d3b9ac27dfe07032c1d6990c6b0b465c86401b675e5d7132d191d9097824bc7df4706519f7e3489fc5c2be8e3ab1cd034b54ba299cfde5cf33cacc703c566d50cf5fe6ff7ecab0c3f3ed8194368013b67c7816459e5212ac80643c7eac789efaccfbc8d6b1af539b6fa433f96d8646cb00916e2363abc46cb42db24109d54736c80f69e239273eac4037b921b5be60de9a715c6c93a26da9dc6298648d42b68ea0de5c4e0304f81c90c995da3734c226ad88086002e72b19406971676a5ac62108a7af923119de357354bc67a1864db6bd685eedd34a0743a49ae0184b5e51687fefd08527b0b56577aae649ef198e93ef817f01a6d14ce2cfe40b1be185a6f52ac0690b17414aaa9422a2d8bae452fb6b6fada8838c67f6e1560644726510c945afbbe9398a9cca352489f9cc90c69e2d187526485da77fae2c6eab4e9db9b5077eaf37eaf622056ae28a66a3b7321034dd01cb53eb77825a42813e3b9e04286ab780d7922f768233ff9618b7ecdf9dcf2ca90a7c2c609175e766119cbb098db3cff4a1498cb0fad69b66574b0ece7d56a6d832e5634f408f20d48220e3cd54d4e2c7de7b5fc5df350f10e725962f83d57004a7dc901de957315d9ac442a7da9f9109aa0e90f59e2a017166f5469ad235a6d29e8ed380f19abff94192da42a31c7423daa4054c60f809d97e858896b60104f8d2c4b4941c2420aec0236b2f924c82e205bba1cd76c971b91b1b904bf1810f3f66c3c0ba59c29d266ccbb52ca682ba29430e417fc5f0ea023521a562508016ad0ddfd83cb50ff1ed7022c739ce3c44e5a99c24ba43a61f30457f9b2dbf9d1642db3aaac96a14440c6174b6c815c9d0f4e1bbd42e3958e35efc3971fa9a78861eef35036248140cf91e3d746ac41e344690fdc4bc36642465a0c359be44e27df981af3f5bf4c5a30ba2bda86f8ddd4da646fda627332e10b50b1244aa39dcfb3866308dfc4633618dcd6fb480fc8f9e46b657302b7d8d8b2abb210b0da87bfdc46d55c30db9cbdc528b4c3c8d52e1af991bb5bd8fd12943e1af0ff3a8ed1478e0b78d01af28c3806e56c14c1737946d530bd7bcc124e5ca0ad5f4e581cd2a44f2e4fce6cb1dd03ae92365d1b1549920a1607092063dae8ef4d7f3196bea1ed197fc9d05851450d1024d83830de23050abc4ce954da46ff64bcc99b15b195fbb468c8ae9177a37a12b11cb1680588ff6116a1c85555d9cb71cc745c7b223757789787e13db0f9f6f37c1615a3b304a246f5869c1dda76cadf6b5aef40287ec835a9efe95446a52d2cfb44e8d1ec5c381b5d487d134c6d74009bf69ffc8a46adf090a2265287185bf4ef0a9267d14f16dd2da95a7102035c97a35aa3f52501938a8c2e2c7d1a164f39cc7663a98c17860af0dfa06cdd44532339d8a0ab9d409b9d28e7ef4fe0ef1fdd61292cd588ddfec476c1742e0e427e47793ecf0cffca799053f9bf5a618563354cf189cc0116e33eef185f274f51f51a1de69f0a3f70b7bcf2044019390eda7d087a235bc886e32bc4c01d9668d2e3a5f97d61a390ef73933607952b171d50eb66f27b953a7ac31c1023e485fd0fbf0cc36b207080167bf5ce52ad6df17fab313e88c726e34edaeba87b9edd9cbf991945966c3aacb56e7324f309686ed995a1e298ce8c24eccc22ce6b3a8e8ea7983284f4f6c4cabdc166cf08f413b490ae3b17e66220582755fc0b4de40ae8164d4ab8862a3c0e59b004d17edf7ff242d2ed7b7ba050360845fc996879efe45c5da946011248f7b4f61f24e3d560b838750d4f145f9988721b000c02496382c1fb708f8574d072579084287ea03891455a5a1d7487ded5f9afe5f6c7fc76333a380fe85ca26453c1f229134b483bc30d161dcee1ae75385a6a48774edc3d2bce4df56d08b5b12d0f14efa394db0f23a1d9c8110d3fd41cd6c4a351b1d4a87973bdfe4bb54b9867dec9f26cde8f956300be5142218736ba132192fdd8721048da6ef9b0701e85c7d1685ab479d4f023a9cfbef17dc74a5eb2bf2bbf0e47e4ae6d3d516b7eae80211fa035eb7dfcb23209ba494e365dfc4dc91fd707985d4aec80027bb074628558afa0ed83ed8a9504de0ac961cd2add41b1a0a68a6d9bb9f6bc223e486bbcc8cffe3eeeec83bcc094118958ed2ed2ffa430cf5367a1f721cd2c381004ee10e9df3662aba33355d17cddb5ea7a21ec461f8835bd2d83efa33ceeddfeb5c16aace068843b132244178d827304864b062f7cdacbe209b4b72680163150f66e8c4cb6d4f8922f679dbc2d4babae1e9add3d8e2bd48ab017c2e952a2e85207e11a3e9f9667189d100c362edca909f0d4814dae4a1db80bcb06dfe7581bdb37e22bc7a671cf14963ef1ac1f22577774d4cbe70babfc2c1ad2103cc2064ec83b52215739d146f53355395e01ff59a444e713e8fbe43bb058cf02f9c2f1157eb56fa6de12c9bfee2ab5064fc998b14103779b45d4329b486922ca27549df85060cd08d793af24c59993d609938b5e05d717f7e0b49c210d5a26124b682c430e4de4f39dbd65969e5c5cb5abb17c6850f7670f691135326ef9883e3ee8c9286d71a55efba0d08c063b0d02e2e60fdc587a5511a0b526651da48d112973eb2cb9069893fde372f9f0c6de14705ef5248064550814bed1d5049579cb207d28bc3a34936a50951fb0fc09514f542fadfd06c68ebfef384e7b5de099873f7067eb91669239d50ea07431045307c9ecfe75eabce657642110ba4762737c1d7a6d18c5802986f9f6209b9fc1f5e234dd9cce60d67a273e2efe7597a707feb3d1bffea45a8f7f7bc7c4d7a78fe86565fa8042579f3ca561f1335bbdc69cc64e29389162b122fd63163c8d4fc23d12edd1245ce9ce2718678952dbe3d4e1788577d1ddc9838597180055d10c8a56d9445422769244abe14067dd3c9e36b9a6a12bb4f718c459ec6718b122b55c841d421df293893b9b829fac40761673d7c7f89e094d24c4361ee0", 0x1000, 0x7, 0x0, 0x3, r2}, &(0x7f0000001a80)={0x0, 0x0, 0x0, 0x3, 0x40, 0xffffffffffffffff, &(0x7f0000001980)="6d72e2374ebd123ec4bf566d2a46f939aeffeb5aeeee2cac50e10624a0ad1318d318697535a425bfdb8ef6088288d2b81307ae7f17419806b1da3878615d93e6bb288b9255d31506711cada135da6d0d76d5c497235a03aece1f3f9e39120226f8fbc93d8db5b1a58384a0f629afb851f56c48ba6df28d2228152b9960032ca55d9d5c09a3a74807e47815f94fe3c38708f8b8797ae990022e40306e2ae01fee7e1e993cbf7a7d231105f8aca5b0baf87577ecf92178015e9f9a41c5f6e074a8b0836381de7c7ed147d04402f8bf5a5af95bfe4effe080108617eba3e8c968f256f5818633779d7c06d6702d22cd07", 0xef, 0x81}, &(0x7f0000001b80)={0x0, 0x0, 0x0, 0x8, 0x5, 0xffffffffffffffff, &(0x7f0000001ac0)="235194f2fef0286495383470b8e0edb2220dd877675a7df30c54d227e35adbb8605a21a8d5f243c45add2fa1e78a2ca7c37be2bc5f04d12ecf5c8915fed49eaa914727464f3270b31fd50135054f9d720d74945063cfccf542429d4d01eb63f26ccf7c854cc025662e0cf1eaa06eccb531bb89ee8d3b6c", 0x77, 0x3, 0x0, 0x2, r3}, &(0x7f0000001c00)={0x0, 0x0, 0x0, 0x8, 0x7, r4, &(0x7f0000001bc0)="cc0f486c029cb29f0889b455ec26da0538bc869630cb17", 0x17, 0x6, 0x0, 0x2, r5}]) r6 = syz_init_net_socket$nfc_raw(0x27, 0x3, 0x0) r7 = eventfd(0x0) io_setup(0x4, &(0x7f0000000000)=0x0) r9 = syz_open_dev$vcsn(&(0x7f00000002c0), 0x3800000, 0x101800) io_submit(r0, 0x2, &(0x7f0000000540)=[&(0x7f0000000280)={0x0, 0x0, 0x0, 0x7, 0x2, r6, &(0x7f0000000380)="912eaa4320a476cc8b75e1ea13a8621a79ea02da431cb8eccba8d93c6defc0e6182d6b36208eae9f72dd9b91a6b80ef7eb498b84172d176de839c9b40b66920eb73f7b4a625f85979a0b0c5ef8ab7b49f514c7167dbabcd13363fd9ab8da4ded8b97f63bb7cec8553d39a283887e0b20649ffd0252785e2372ebd54144995b6517a13021cfd0da15e244df76efb4c17e0e2995553691661ca10633e994b1f203864095d0aee01655af4e4735a2c772d5c23ca18f137f30709530b44fdc4e51c2240d2b146e37751a3efb709100911b", 0xcf, 0x5, 0x0, 0x1, r7}, &(0x7f0000000300)={0x0, 0x0, 0x0, 0x7, 0x3, r7, &(0x7f0000000480)="6d673b43a6ddbef787de0ef6f42def738182ec8cdae308512b37e6f61207b64cbd62731f969d863834571216d89ff2bc7f6d66880845f0199d00433131b3ee2591a191186afc448d60204a41164e4ca773c02d618970ed402bbcc4522d984c8c4a0d8bbd811139be8bdfbb2946f2de054ccd1de75bdcae297267f61cd194c706b61c6cc78757ea", 0x87, 0x0, 0x0, 0x1, r9}]) r10 = signalfd4(r6, &(0x7f0000000180)={[0x1, 0x9]}, 0x8, 0x80800) io_submit(r8, 0x2, &(0x7f0000000240)=[&(0x7f0000001c80)={0x0, 0x0, 0x0, 0x2, 0xfffc, r6, &(0x7f0000000040)="e9f2a074fb40d5db4c6855c767c496a74796e7a9b5b3728fd23c982cd5c4ae9fc7819be02e098229dd192b03c57ccd96e3011e3bcf6b9ed552285f", 0x3b, 0x4, 0x0, 0x2, r7}, &(0x7f00000001c0)={0x0, 0x0, 0x0, 0x6, 0x9d, r7, &(0x7f0000000100)="4a8ffcea835d42f54f247a6a85da581037edc72f8ee4d461ac6743678508a6230ca15685dae8630d2cbad77898dbac4e729282b078f8f7908839b2ecfe69c243aacb7574a85bc95450cb985c1f657fd62d0f9b550a8d295b6872b2e6062fb9579c", 0x61, 0x8, 0x0, 0x1, r10}]) io_submit(r0, 0x2, &(0x7f0000002800)=[&(0x7f0000000200)={0x0, 0x0, 0x0, 0x0, 0x0, r6, 0x0}, &(0x7f0000000340)={0x0, 0x0, 0x0, 0x0, 0x0, r7, 0x0, 0x0, 0x0, 0x0, 0x3, r7}]) 17:49:22 executing program 3: pipe(&(0x7f0000000040)={0xffffffffffffffff, 0xffffffffffffffff}) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000300)={0x0, 0x0, &(0x7f00000002c0)={&(0x7f0000000000)=ANY=[@ANYBLOB="6000000030003dfa0000000000000000000000004c000100480001000700010078740000380002802a000600260000006e676c650000000000000000000000000000000000a8ff08c70a8adad900000000000000080002"], 0x1}}, 0x0) write$binfmt_misc(r1, &(0x7f0000000000)=ANY=[], 0xfffffecc) bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, 0x0, 0x0) socket$netlink(0x10, 0x3, 0x1) r2 = socket$netlink(0x10, 0x3, 0x2) splice(r0, 0x0, r2, 0x0, 0x4ffe4, 0x0) 17:49:22 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r1, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r2, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:22 executing program 2: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r1, 0x0) mmap(&(0x7f00008db000/0x1000)=nil, 0x1000, 0x4, 0x1010, r0, 0xb375d000) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x0, 0x0) ioctl$EXT4_IOC_GROUP_ADD(r0, 0x40246608, &(0x7f0000000040)={0x3, 0x8, 0x7, 0x9, 0x6, 0x2}) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x1000007, 0x800000000009031, 0xffffffffffffffff, 0x0) r2 = socket$inet_icmp_raw(0x2, 0x3, 0x1) ioctl$PERF_EVENT_IOC_DISABLE(r1, 0x2401, 0x3) setsockopt$IP_VS_SO_SET_ADD(r2, 0x0, 0x482, &(0x7f0000000180)={0x84, @multicast2, 0x0, 0x0, 'lblc\x00', 0x2, 0x0, 0x4}, 0x2c) 17:49:22 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r1, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r2, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) 17:49:23 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) sendmsg$WG_CMD_SET_DEVICE(r1, 0x0, 0x0) 17:49:23 executing program 3: pipe(&(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) r2 = socket$inet_udp(0x2, 0x2, 0x0) close(r2) write$binfmt_misc(r1, &(0x7f0000000140)=ANY=[], 0xfec8) r3 = socket$inet6(0xa, 0x2, 0x0) r4 = openat$cgroup_subtree(0xffffffffffffffff, 0x0, 0x2, 0x0) write$binfmt_misc(r4, 0x0, 0x0) connect$inet6(r3, &(0x7f00000002c0)={0xa, 0x0, 0x0, @mcast2, 0x4}, 0x1c) perf_event_open(&(0x7f0000000080)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7495}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) splice(r0, 0x0, r2, 0x0, 0x10005, 0x0) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = syz_genetlink_get_family_id$ethtool(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$ETHTOOL_MSG_CHANNELS_GET(r3, &(0x7f0000000100)={0x0, 0x0, &(0x7f0000000640)={&(0x7f0000000180)={0x2c, r6, 0x1, 0xfffffffd, 0x0, {}, [@HEADER={0x18, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'erspan0\x00'}]}]}, 0x2c}}, 0x0) ioctl$sock_SIOCGIFVLAN_SET_VLAN_EGRESS_PRIORITY_CMD(0xffffffffffffffff, 0x8982, &(0x7f0000000280)={0x3, 'bond_slave_1\x00', {0x4a4}, 0xffff}) splice(r5, &(0x7f0000000140)=0x1, r1, &(0x7f0000000240), 0x1, 0x8) getsockopt$inet_sctp6_SCTP_PRIMARY_ADDR(0xffffffffffffffff, 0x84, 0x6, 0x0, &(0x7f00000001c0)) ioctl$DRM_IOCTL_MODE_CREATE_LEASE(0xffffffffffffffff, 0xc01864c6, &(0x7f0000001ac0)={&(0x7f0000001a80)=[0x3e8e, 0x8, 0x0, 0x200, 0x31, 0x5, 0x2, 0x5, 0xfb7], 0x9, 0x800, 0x0, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_ASSOC_ID_LIST(r7, 0x84, 0x1d, &(0x7f0000001b00)={0x8, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]}, &(0x7f0000001b40)=0x24) socket$inet(0x2, 0x0, 0xb5) 17:49:23 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) sendmsg$WG_CMD_SET_DEVICE(r1, 0x0, 0x0) 17:49:24 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) sendmsg$WG_CMD_SET_DEVICE(r1, 0x0, 0x0) [ 296.925495][T10260] IPVS: ip_vs_svc_hash(): request for already hashed, called from do_ip_vs_set_ctl+0x2e51/0x3450 17:49:25 executing program 3: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$NFNL_MSG_CTHELPER_NEW(r0, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000140)=ANY=[@ANYBLOB="500000000209010200be18dd5ccda8851ae8c9a500000000000000000000003c0002000400028005000100000000002c00018014000300fe80000000000000000000000000000014000400fe802d3100d9ad13334aab769e3ccc53e6dc1ff41c8fb74eee7d9ebe4cc1552d81c5ea5c100645eab498ee7e1e8827e5e16e140cddad32562ae42cc6e4ef9935af47b65754b34d2c30a65e5a62328449ad7831bf14b6c4ce21fa026d5092d190d279d22ee8de4e80069434dcacb5822b0d18e37d5ffd940f81f5b60fe31aef4ab0d92572abaa868a38590670a0228f53c548ceb4b191238e530d425c4f81914829c511517b624bf66b4131a030d7b8ad0c90d4d3b73c845596a5fb51404f607f54658f0aa5"], 0x50}}, 0x0) 17:49:25 executing program 0: r0 = socket$inet6(0xa, 0x1, 0x8010000000000084) setsockopt$inet_sctp6_SCTP_PEER_ADDR_PARAMS(r0, 0x84, 0x9, &(0x7f0000000400)={0x0, @in={{0x2, 0x4e24, @broadcast}}, 0x3}, 0x9c) r1 = socket$inet6(0xa, 0x3, 0x6) ioctl$sock_ipv6_tunnel_SIOCADDPRL(r0, 0x89f5, &(0x7f0000000200)={'ip6tnl0\x00', &(0x7f0000000180)={'ip6gre0\x00', 0x0, 0x0, 0x4, 0x0, 0xf0, 0x8f551a2bb4abd7c0, @local, @rand_addr=' \x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01', 0x8000, 0x40, 0x94c, 0xfffffff7}}) ioctl$DRM_IOCTL_GET_CLIENT(0xffffffffffffffff, 0xc0186405, &(0x7f0000000240)={0xffffffff, 0xcda, {}, {0xee01}, 0x3, 0x8}) r4 = ioctl$KVM_CREATE_VCPU(0xffffffffffffffff, 0xae41, 0x0) ioctl$KVM_NMI(r4, 0xae9a) r5 = socket$inet_tcp(0x2, 0x1, 0x0) ioctl$sock_SIOCADDRT(r5, 0x890b, &(0x7f00000012c0)={0x0, @l2tp={0x2, 0x0, @empty}, @llc={0x1a, 0x305, 0x5, 0x6, 0x2, 0x1, @random="b7e029395de4"}, @nl=@unspec, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)='veth0_macvtap\x00', 0x4, 0x10000000000000}) ioctl$BTRFS_IOC_GET_SUBVOL_INFO(r5, 0x81f8943c, &(0x7f0000001640)={0x0, ""/256, 0x0, 0x0, 0x0, 0x0, ""/16, ""/16, ""/16, 0x0, 0x0, 0x0}) ioctl$BTRFS_IOC_GET_SUBVOL_INFO(0xffffffffffffffff, 0x81f8943c, &(0x7f00000018c0)={0x0, ""/256, 0x0, 0x0, 0x0, 0x0, ""/16, ""/16, ""/16, 0x0, 0x0, 0x0, 0x0}) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000001ac0)={"6cc3e040ce2f7ef8cb505ce038b3ebf1", r6, r7, {0x1, 0x7}, {0x5, 0x2}, 0x83, [0xf43, 0xd0, 0x9, 0x8, 0x8, 0x6f, 0x2, 0x7, 0x1, 0x6, 0x2da, 0x57, 0x4, 0x10001, 0x7, 0xe830]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f0000000440)={{}, r7, 0x16, @unused=[0x7, 0x3, 0xc7, 0x24], @devid}) ioctl$BTRFS_IOC_BALANCE_PROGRESS(0xffffffffffffffff, 0x84009422, &(0x7f00000003c0)={0x0, 0x0, {}, {0x0, @usage, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}, {0x0, @struct}}) ioctl$BTRFS_IOC_SUBVOL_CREATE_V2(0xffffffffffffffff, 0x50009418, &(0x7f0000001b00)={{}, r7, 0xc, @unused=[0x81, 0x4, 0x100, 0x4], @devid=r8}) ioctl$BTRFS_IOC_SCRUB(r4, 0xc400941b, &(0x7f0000000580)={r8, 0x8, 0x7f}) ioctl$BTRFS_IOC_SCRUB_PROGRESS(0xffffffffffffffff, 0xc400941d, &(0x7f0000000080)={r8, 0xfffffffffffffc00, 0x1ff, 0x93ea78ed436e40c9}) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f0000001700)={0xf, 0x0, {0x6, @struct={0x7, 0x4}, 0x0, 0x0, 0x800, 0x1917, 0xfdf0, 0x66, 0xc1, @usage=0x2, 0x1, 0x3, [0x6, 0x5, 0x848, 0xff, 0x7, 0x5]}, {0x7, @usage, 0x0, 0xffffffffffffb5cb, 0x9, 0x2, 0x2, 0x4, 0x4e0, @struct={0x0, 0x100}, 0x2, 0xffff, [0x7, 0x10001, 0x5, 0x9fb, 0x0, 0x1753]}, {0x7, @struct={0x80000000, 0x5}, r8, 0x570f, 0x1, 0x3, 0x5, 0x7ff, 0x20, @struct={0x1ff, 0x3}, 0x81, 0x2, [0x0, 0x6, 0x80, 0x7, 0x8, 0xffffffff]}, {0x9, 0x9, 0x245}}) setsockopt$inet6_IPV6_IPSEC_POLICY(r1, 0x29, 0x22, &(0x7f0000000280)={{{@in=@private=0xa010101, @in6=@rand_addr=' \x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02', 0x4e23, 0x0, 0x4e21, 0x574d, 0xa, 0x20, 0x20, 0x2f, r2, r3}, {0x20, 0x421, 0x8, 0x6, 0x3, 0x38, 0x9}, {0xffffffff, 0x1, 0x3a8b, 0x2}, 0x7, 0x6e6bb1, 0x1, 0x1, 0x1, 0x3}, {{@in6=@private2={0xfc, 0x2, '\x00', 0x1}, 0x4d6, 0x3c}, 0xa, @in=@dev={0xac, 0x14, 0x14, 0x14}, 0x3506, 0x4, 0x0, 0x3, 0x4, 0x9, 0x80}}, 0xe4) setsockopt$inet6_MCAST_JOIN_GROUP(r0, 0x29, 0x2a, &(0x7f0000000000)={0x0, {{0xa, 0x4e21, 0x20, @ipv4={'\x00', '\xff\xff', @local}, 0x8}}}, 0x84) 17:49:25 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, 0x0}, 0x0) [ 297.652995][T10293] netlink: 60 bytes leftover after parsing attributes in process `syz-executor.3'. 17:49:25 executing program 0: getsockopt$sock_cred(0xffffffffffffffff, 0x1, 0x11, &(0x7f00000001c0)={0x0, 0x0}, &(0x7f0000000200)=0xc) r1 = socket$inet6_tcp(0xa, 0x1, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0}, &(0x7f0000cab000)=0x6) chown(&(0x7f00000001c0)='./file0\x00', r2, 0x0) statx(0xffffffffffffffff, &(0x7f0000000300)='./file0\x00', 0x800, 0x10, &(0x7f0000000340)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) setxattr$system_posix_acl(&(0x7f0000000100)='./file0\x00', &(0x7f0000000180)='system.posix_acl_access\x00', &(0x7f0000000540)=ANY=[@ANYBLOB="02000000010002000000000002000100", @ANYRES32=r0, @ANYBLOB="0200050039e15d6225ecfc6de455c7e890ab6ff58dbb9b6d696a2e65229f1d58a801cda771cb718ea7de9b855712267ab89dd5fb0da42f7603b9604613c616960208eee978d45024bbe186c8081a8cd7168173989ac7f2c7ca2200c09008cb51d739a6d3d59410f2a3175dba9cb6b2e06b5e2afb344e441f7f2c28aa8ff4d45c3eff5f068b650dfb1e6643970fd7eb3fcb0c213d6ba6e833faf61667a9f58739306b5400"/175, @ANYRES32=r2, @ANYBLOB="040002000000000008000400", @ANYRES32=r3, @ANYBLOB="10000500000000002000080000000000"], 0x3c, 0x1) r4 = openat$nullb(0xffffffffffffff9c, &(0x7f0000000140), 0x84081, 0x0) openat$nullb(0xffffff9c, &(0x7f0000000040), 0x101040, 0x0) pwritev2(r4, &(0x7f0000000080)=[{&(0x7f0000000000)=']', 0x3fc000}], 0x1, 0x0, 0x0, 0xf) r5 = openat$cachefiles(0xffffff9c, &(0x7f00000000c0), 0x0, 0x0) ioctl$BLKRRPART(r5, 0x125f, 0x0) rename(&(0x7f0000000240)='./file0\x00', &(0x7f0000000280)='./file0\x00') 17:49:25 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, 0x0}, 0x0) 17:49:25 executing program 2: shmctl$SHM_UNLOCK(0xffffffffffffffff, 0xc) syz_mount_image$erofs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010000)="e2e1f5e09521e93c020000000c0024", 0xf, 0x400}, {&(0x7f0000000240)="050045319544", 0x6, 0x480}], 0x0, &(0x7f0000000040)=ANY=[]) r0 = syz_mount_image$f2fs(&(0x7f00000000c0), &(0x7f0000000140)='./file0\x00', 0x1f, 0x7, &(0x7f0000001600)=[{&(0x7f0000000180)="25a5b067c9b7a1ef46122157df80dcb34ba85015bef4aed1edfd291482f2c0abf4be42288db1995f32738306487beaa50b3be3a7986cae4db625375c", 0x3c, 0x1880000}, {&(0x7f0000000280)="1598a63af29328957a8349186c0e738addfd7bbece3b9a189a0fd0d72e81d599265e73962c362d18f473d9763ae73bfd4aede56527117b1d274c72bc3c8c19e48ccf64cbadde3dcc3baf78f3afb398f722de736dcfbe54ecd98067cb28b8a5ae46a8eee2fec02556935f1f88e66228b37fc3b23609779a02155f262f2e8aa42a0952", 0x82, 0x2}, {&(0x7f0000000340)="67b6df1c92b130e01646c43b4b2563de0053b366d254fce8e7d81b171e6953d67f55e1e8b4b5e1fcfe3d64bd09117397ddf0db7a0df7e860def40289933332fe65e863d272f80113b17aba7ba51d9bcad04782d6ee2465040486e2adfa867aa29d13d26f53a05f0655a4ea5fb77c86c619866f649a1a224e1c586824fd8eb3b1a1454b903e4a314dbf0b14c551449377aa8715b84d1d91a894d2d37c772065c13ccf14b89a7f2470f86804080f3641179ff460c7e506482aaed5520f33c4a03482daf6003c013af47f23c14f5f555cd262930f952a3ef6f2edd188b7bcc7c02a0434a62cb9b498731501b4a11d28d4d7aa11ce896f1773352058e6b396167a17987d750939f0e03440d5f9abff40a43d3dfbc0d91e8117f7145c9f66dbcd5573b7a7b2b33ac670295adaf8111f3a73b1a216bee1429b3021257636d7cce5170138a310da887b2128b8df40aecc92b2b536dc73f17421e4bf2e81425de374175f51693bac1c1fed2aaebd400232d4cedf8c591cc4b4c3a5159bc0f10d3878e6d43319980c8fb7129b3c9a9e5961e6cbd85651ad1547e039785fe062f3462df7df20fb9dd3adfbef7fa6bde7566e37cb5a7f7ff8a26934de56e37c6e4c84f9db4c52839cf9349354fe4fe532fba1554ec4dba3ce5d78bf16d29aba165478f4cfdf1b7aff1e09b41cf36dab9fc352d461cffbdb62280253dbf6e6ab2eebce351c47b1204cb5c46c61601a857ff82fb43dc78955ba01231d7cb0990c83d7e9cc7b53b631ab747215a4f66b812b5ebac8a7d5db82d06a59e90d18173cd9b93675ced3d12bfc2009f51af4d35c7fad72cefb762767d19a7eb28474bfb19b26de2ecb196c16f906a2a501fb06f2bc8d82475317b204cf0d011808d402cad45f6c86ab4e346d41d07a95c0a353ff7efb1fac0fc3c40f94a6037817f0903e23318d94e530c1b9241f0d48f3ebf21a5b0810e1f8c826a2d28bf81200f405886ae2dce9da696d52ee4b43c93a34fbcedb26c90bc0f5d3c2e8361356e17057b70a2f895407f00a27330da8a90dd5ddae8067980b6c7a6731334d3b9b5cb0c6412716e4b7959e9f1093fda726c4d35febb33d210f4dbc3c12e831bc0d970f366d94b3bccfe8c0a28055f7025d11fcd35b5be22c459edee7c6c6d5b2680791c7f339e7267bf3ab0a81af8a1ff25c231accdef6e10a4c79e49fb46c377d2a3a4cba1016c3ece693f49c710a8a5fe7c549b85c9b66826c08152def1787ba9c1557a559985bd7ba0abf64b80ad4714162affbdbf399e0374e64f24e836baab6e61a89d74ae136ad4766d4e91c2224a1cfcfd1edefc43f491b0d35aa9840f208216c35773f7d28414931614feeabe53dafb1468b9db7abc866c28916a20fe8ded6f4ecdc139eafdff30e6bce78ed26f21e0af5116c16542d5e42b73d7bede2216db640a1c69490eb8c760404e0482b1a026dae97964eb011151d97b2fd31857da84fcd383737fd5c9f40d80b1cc5100ce6f5686836090b94c46470decdb6192facb7eaafd3d7fc25ba58e7e4d089ce5c753d67b78bbc874aee866ca9b1ddfae843cf48b8ac2cfd52fe99305579d899de44bfccb23fca01b46fe9ae9e9428060f81d1cd8f4667e2d62239c0a1622c2cb107978304136102ad958d8fcf11f3e28a599f88b4126968b3087961135878869f8a4299364918dcadd5af386e67cfa69860816bf7cb1e8f59b631073b4d3e42ed0f1429c3f986d03ff44e016f5006b4ba407986a5f72362f9fdd4045a9138d08c31d672e8fbc0ad73a302a212d1f00517835d2e279e00fc85ee1766d74bc3e0cd14871248b2a88c59112f4890fdf34920208bd890748029197e670ce3f5c66bba78762af40243f8f22f61280f1f73a780649d0098f18b10fb9fec987d8676c3ef0c5a375148df43778dec8c34206be67e22b6647d9c435225eafe1a6951d8a2cd482f8386d9bc79ba8e10826211866fa915b254806f0fb3c256f03ea5a1f23a03e3dc2cafbc8c06c0bde8009653ca34bd78fbd16b2a8e54aeb7173c19ee035006a4267d7f951cb6e198a82ecd4bd6a3c0eb4452b0fa36fe70a1722143f8c7b66ce218de065e4e8a976fe4211fc308da5844b46dc21ed041dbff58070c44c14716693c557a3fd75bb05ef02387c63befb6a6bbadbcc9326ef5da77ebbf34f692d5e7544b1decde4a179223c2ff183dcc023a49fe52c6dae9d68b737e373ce231f8d1671675481f488fdc087eaff3dda541af65523e92b122eb019b30a1fd4566c58b59af6cae45b86f3e5729136b699831a64cfbfde6d9cad0ed92f16c7d4b86e8ecd14efbcc4c54674382b1189ad6554a1d1667babed71819fa671b9f272292569e7d1a8a8a7aa37726c7ce0b5cba21e6bacd8cff86b8b1c118a5ccd1202226a9fbdfb35c27b1d9433523c0eef7e8ec94d5edde2aac936fb47bc9fea7a6e4b5e880b8f7927afcea6e595011b66bffd6383dafa8246e4024acd13085834cefb9e2efc8b98123217ed6698f281800274ca1b6f2f167e4a88b642abf037c004cdb7af93ff2f7d5a6e043a512e5538fdb8ff256534c163c7b3801499a5e103d5a2bdb17630cf7d9961add258ce3cf3ef09c7272580d0d99aa184664e0620fe8c369d717214d4eff4025c5eea4ad0192035dea22b9814d6daacba787a42e75d64b36acb8b895aea57332dcff3623ee60c66ba774c562c27bf565d3cf4f66a6de0691cec1480a69feb6c9487a23773b13cea3f6f39f160c169b764363be44558220aa2e40f21ed4dfca2f3fada4d9ec3d06a049605f5d4f9f7ad7c442508d11c799b635c35873b8e7254efec4fd2b102d168eca9ad53866a12ebf415e98f6b2a8a602ba146a5f64b07400e295d2c6d94e80ad32ddc133e31078d035eda6a9161c502df1c7347286849a89240d588d4f52a30dc6bf4cf0ed2ed31681b6c656dd1a4547710b3559aa64c613a7e56bb9221818b2709085262bc81a721a362c992790850706aec8d34de5f45b77368768284bd77a1092c5de16816d36ff3cd964e2f824d9443f6dd76e2cb7c25ecb49a446b2a24e70f5b60b5b898f4abd4f7e6e5fd092bf3d0e8a3baae1c48541db4eff59838447403313879d1b20a2cbe3aac5758179942e50a30bc452cf0ab59a8dd1b0be1b51507b3cef05aea99a1dd19e115738c3ef8d1aaf5b2a9bf4e11b46f36827e81de4d34b2b13328f003e4965e09d5332c06c2d47b55fc3e145a5e5082da3526dc98cbd87a06ae51c6235198762a3e7fc752aa812901e5b95eabb0559ae94a0fe09e502dea55f1e1af34e04ed0b003334078c8e7fb6de6ae9194170d1c77cc1dcf17e8520b359c8ea8973e5d76bef0511d2faa23849064a4c47f0dca95e45994fdd27bef99f2fb7f5715986373a0468752652735085bcb3bd61b1db12222df3bd871630978b8413ea64b80cf82a5ae2a1dd7d65d402aee4f2a36c6f4a334dac506d0432961b98d454fa0aea223e5ee71ded5b5f62816286dd40e5906f91ac5778de64b6e8d2f0786f1d769159c902a8fcf5c7090910eb9578e0869a54f48c721da46b63527c72d72001c7b16bac99472d7aeba51c559411e85848b96ddd1cb022d5b760cc5dc2765e588809a44d82267317f8cdafa67549b04ca1e3bd604ee0ed9dbe8b0870e0bdd56daffd55e6c05c3ab53ea95a525d464468f21302191b2e4ac2d12763b81c7f98a85aa008c87a2467dfab92ef7f170a3cea6b08b79d453d86be04d7636b2c17c31d7cde82527562ea7cceeef26b26b4517e9566dfc489560c82ed11c04072eb87d3e367a168ff473905f92165f136e9dafe0b9e78b24c73fa544d0eeafb2d77fe65bda39ce35bde325773b3fa6a687dc9b07141728a67a9bf97feee244098e3f31340226ad473a57b5222a324c0401d30327b41dbfe10b54b4a65bdc0146c7425c39ed518c2545d04dde279ee8e26549ca543a3ff6a061dcb75ba1fb9a3f2b0318a242c6432529d2ab6040703d7221545680d239776fd4141c46873099fab23f34b697381cfb787a4dd2ad93b639a7cb2b788f5f0be0da9791f888ad46e84ed4683b258f4a06d4eeeb6ef19dcc37bfdc43e8e62cdac1ae7eef49d33335965346c7203f26a5a8541b2b167166881c6c1027f22d68c17f3746ccf7fad94518a41a8a0838371dff8be5e98106dc79eab5b04c944b52f1d2adc39b78a19d5bfb920724de3e20967b85d45f4f68657f1467abeef416702e27daabb59166d5329225def2237a87b76f2dcd0110b4e73e1f45545a5ef524497c7312d9282ba2ea9d42a81e93f746b35e0b193c9af3ac06ff95e179233e809666ea5ca090f799586627b4ea78f65e15d51230b26d51ca11b29d0f0171a94be1189cb7b8e6deddaf4509233bbf967ec991ef93609ce7184f435240479e5be680e41d52c0f417d56ad3bba7d7a68f3a28a053b2364c4a5e0697f6d468f3c1f3510508f24a517bc779f39d9554d4833b050d38effe6c14dd9a8a316810e55c153b93b73de713c6f86493f9b2eb17c78bc4d732e29aa79da00f298ceaa9ab3859c8d0d428030bf7325e41e44045f694d7da94292bce4497a99ecc9f60bdd569b804fa53e1c49cc5af1830809973bcec3b9774467278a4708d979dd73dc8488166d05cdff5ebe22cb8fe6cd7b29280c90bb44df003626b3e8ab6492ae288d87b726b7a9db06e1d79a35ede7f7c3d535cfcc6444a1fd3ebc0ae3fe042c2cc0e801ef480710bb0915fa5d39ff1de43139856831b7051d9e3291ae1a1180c5affdd565fc4f69449cc78f85f0685ae7a24ffe80bd6b46b30f892f0b7d01d760c11d685da9a7d0b1de847d48d219b1f76abba15188ad7b4528ad1a939ab47e426370dfa9ad9215526759caec85cc9661ea81d7910b41df50094a78d321c5f252b7a76d36caf6ec4db1354d4884dfdf515cf2a82609dcfcf970499c36a0e2e38293c237fa9891308659177cd4ff2135680fd0c1f5059058f0846035dcb8450a88ba115adbadebb037a637dc5a63bb85145f08faf565c32b986f2cea6a3a41d1446ede3caee52019b7c14088a7658505fc0c6f911edf15eecffd672e8b7b68a5e7053c37b1490e00fa13ab0f34055cf34e63696478e225d821c65889db518f45c2d3847d1c2f63e497a058603b824593690423690a46aee232f3d787fe7e4f80ec1a8b5864ef62364fc3881fb66ef9507ef026ffc5afccb2f786fb259972a30ac812fe79b3da53290ab216880fe42ce73a3cca5d79c7a7c91e21d8debf22a9d01046a9eae5d3e16eef9186a1250fdc436cbbaa49f83b051a51115715b6c7f1256e8e7b28b8779900a2102cc03b707a3830cbc67287ce26901747a7f1257715a243bed1237b31786fca2cf3e67e1c5474bc0533cea84edb145bb08037cef3326520c8e5a48803a8445b58e351cf897e4630aebb5be5f178ddfe013bda75705b91e352a7f0e0c41d32389c5759b2948500e1b5c9f6aef6b0358a421c848911793878d77ad76945e284974492e76fa9cdb86dcf643fc1fc30990a4a8803c5ce316e20f1bb4a20b321b4c30a8e0c74e576135522ea57bca9905f740bcd6c1dba9a251167f21648cdbf88bc0c80595f998f883b019766ab6adf71c73c44c4a22065f19638112f59c831eb65e5b05ece287c91735f4529a75119947d79c1921e27e63c04892308f39f0cb6f9d68f9fe8d079e98f2a30cdb066f2de29502bc05af0eebc9ba1aa6f1f1ae379f870129376f10e768dc595622fbc11c97815a5c708430ea72c637269989f3b28c690fec8bcadd283c212700bae", 0x1000, 0x3ff}, {&(0x7f0000001340)="6c01daf2e5b6f37622fe37167e0fd997a6c4a0b3139df6701d0db698d13411f89f0dbbf310a4a39aa6e8dcc21e77e844978e9880d26f3c2d707af3c32ffd21b17a12264c0b1325e215e75b4ad330684bd32d7b9082da2936a2f1b12b391a88dd8b5e1891599ca0cbaa8b72201b01727aaee9897bcb6af96da5e14e14965caaeede525bbf7fb3960e4e7611209d7f47e8b3cef6baa11b7608aa64df3c6caedd1da869acfeb8aa190987685805987701177865", 0xb2, 0x5ed8}, {&(0x7f0000001400)="29118bda41fb8ea4e3a7038ffc913fd83aa487d829f865fe2437c7e3029ad14fd2b51fc21ebd36b07b35102a015bffb6cbd6e4877a62d6ac6aa59eba8c3a1da5b590aed240123e3a28824764a3b1e266308a6dea9dcca0656d8419073946de07a387ef39e98371d78ece6fdfe73aaa7f4f51666d5b12eec1b8f37eae02995cf9ec6a1aaab8567e255a73e472ccd2d714ff87a0f8abc0e2a7f1049dc013e9962449a0c4dcb6802281629e4768da8d0984ebae0dde6d13e2870892510134ce8ea5a413ecb326c1035234afdbf13d26e1fb050578a64c22c0ff41b0c6a859c19a23634d7857d4bfb104c2cf97bd6e6e6d49e1945430fe8b96557453aa", 0xfb}, {&(0x7f00000001c0)="8acc1f41d1b677480e10bd4e5bc2a113164392f54f4e87755739d5037b5a09796e61099558ec69b249e84b2f1dfa32b1357e026057cd4ea5a77a1d92d4", 0x3d, 0x7}, {&(0x7f0000001500)="a00ab254b362c9bc8d850a97626a420bea8f75268df3dca2c1217929863e771084886893ffaa59717d949566c6af19d3064be03858fcdf718793600d99be855859582ea674929725b69a3c9e6ccac78ad4be74862771c7f107b1f3a1d29ea6999a67269cf72967a5fee046887d6994c077d3bb551f725f3e96e44e1a996024862aa23839ddf7ec058de9ab7a4ba794738f622056e50055df1db67f8acd982ed32424c5ae03a395ca8cae21a6d264428c2ef872896f99a788d2bf1fb2498fe532f540fd36db1d8f27e430e185c60597893a3e5c599623a619f949a0f46fd6c2", 0xdf, 0x80}], 0x0, &(0x7f0000001680)={[{@nodiscard}, {@noinline_dentry}, {@grpjquota={'grpjquota', 0x3d, '\\T#'}}, {@jqfmt_vfsold}, {@four_active_logs}, {@nobarrier}, {@quota}, {@fsync_mode_posix}], [{@fsuuid={'fsuuid', 0x3d, {[0x36, 0x30, 0x39, 0x39, 0x30, 0x65, 0x63, 0x38], 0x2d, [0x63, 0x62, 0x39, 0x36], 0x2d, [0x34, 0x62, 0x37, 0x63], 0x2d, [0x30, 0x37, 0x37, 0x31], 0x2d, [0x64, 0x33, 0x63, 0x62, 0x65, 0x66, 0x66, 0x64]}}}, {@smackfsroot={'smackfsroot', 0x3d, '-'}}, {@measure}, {@smackfstransmute}, {@smackfstransmute={'smackfstransmute', 0x3d, 'erofs\x00'}}, {@hash}]}) openat(r0, &(0x7f0000001780)='./file0\x00', 0x40d01, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) mkdirat(r1, &(0x7f0000000040)='./file0\x00', 0x10) 17:49:25 executing program 3: ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000dc0)={'wlan1\x00'}) r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r0, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x9, 0x0) mmap(&(0x7f0000000000/0xfbe000)=nil, 0xfbe000, 0x1000002, 0x31, 0xffffffffffffffff, 0x0) syz_genetlink_get_family_id$batadv(&(0x7f0000001500), r0) sendmsg$NL80211_CMD_FRAME(0xffffffffffffffff, &(0x7f0000001280)={0x0, 0x0, &(0x7f0000001240)={&(0x7f0000000000)=ANY=[@ANYBLOB="48040000", @ANYRES16, @ANYBLOB="0100002c0000800000003b0000000800", @ANYRES32], 0x448}}, 0x0) sendmsg$NL80211_CMD_GET_MPATH(0xffffffffffffffff, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={0x0}}, 0x0) syz_mount_image$nilfs2(&(0x7f0000000100), &(0x7f0000000140)='./file0\x00', 0xb8e, 0x7, &(0x7f0000002880)=[{&(0x7f0000001340)="abdfee858fd1bbe1e72132a64f4598a961b525f22884ea7c9acc232857861de90ec92cb84d42eedcd21e11cc4e5758c0acd3dc73bf201cbe77934779723958f302635eb9826bb545a9edbef5c7a54856966ecf42b46ff38c1cff080702e72c2fa0a5276620ae32487862c6b5a93b872b0701b3ebd845c88d68494c58bfd056ceb87cc0fdddb82f903b250cb040fa20f56e028be4081fbdbf43ff248a998219c33db0ac8f15a7e5ddb4ae509f1030c3d7692feb4624904a629d313e92098452693f4a1dbd633c", 0xc6, 0x20}, {&(0x7f0000001540)="159a8ca2c44e3ed7ea79ae39486a495542653532c11173af7e6bd8026483c332db709503e9e16a2b93363b853f710c30ba25d580cb3e61f25f26d1cd0cd1ea5c05741c047deda5771df248cb6c6ccd9622c1650cbf1a22a43b2b5ce8eeb5e7edf6b00172117079b10aecab2dd1cc3467e2782cc570a6542c890c5c2e70378a16b4c0abe878a24b100d3c47e198a3dbd892010c0d0c0e0855cfab101c98be51d5a9cd5ff2e8bc4d2ff833d472cdfb94f01f1985203b13be2737a27426f98a15fb3afa7f60b096126776479279c0fd6d2ac754c865bd6851cd35f00214da4f67a413c5ab013f60a67a5eb0e3962fed9137570c45dca0c9509d62451a913b", 0xfd, 0x2e9}, {&(0x7f0000001440)="ec6751ba2d4dd61a2b56e2e9a2a934ee61673e3ef607fd1bda79d0b842751e60f540c6949d13b5ff267dd1dcd634891241e34043cc59122849b410bb7b7c1c7fb152df7a365c1677a1dc12194af95f79234682746640a4cf6d11069778102365a9074e472e95def810b1b8ab38eef797c25a71158774d3f7b1d199f4ad4dc926dc889ef47ed3da9d51c194af30784a5d2cf82f6fee30dd3b843a4827fe3690f985f09cce38741edb3ae473fa173f", 0xae, 0x7}, {&(0x7f0000001640)="c12453549cf3f6f9df5c307d9fcbeaee9832e309fd9e5939e21b4b5811630588406546c3c035240a1a2c5cdee935f80a17c27b9745b9ec1221ee93eef2c07799406a75bc3f59bf31b5e691dd06ac9172500c7de6bec3e04c0bf0dc3f278c5e6b6e47f71099596dceaac9f2ada46762c98f8a16df18297d48581d033ea9ee1734ae4479d78fadbd22fbc5d375de157fd5d5dd649188ff2d79dfb8abacf9d481cbc74e148d3b69b4dd993736649df4bcbdd089fa11d34738588a84d3e315df50abb15810d48146bc941a58232af995f654f88103b2d6a61abfecaebb8603596c004fbe37a2c5dd992c1e1dc17b1f40fadb5afe745e459f54e719583534b04d84bdee5b0cd2ebe5e60c88b9dcb516ae44176df58c35ccc9b866a03489b98afbf95b25234898c9a886d1dc2d2c599459459e2c1b3ed8c5cd43301922812b89fa5191c868972465a4acd4ce6e1d8b22c7334494d45a94d6c57afb44730dc9807ad28bfd6607b7e13d2490e31e575386ba061e68db72be6561be2a37fc96279da77b3d18f72e2aa5c42abca9fe9761ef8d8546213f7cd1e3d4895dec4b6236bbf9a6bbfcede2abb1d72d65278ea412feb402cea1e1796a6f250b5e1287989da3dbebc3bbec6473e18b8aae77ea7914aaaa7d6461b07e8ea55e1df11d2d9a076b3c614f6620cbb7c2922296dc6b600e667d90c816c76013b4df28928c984107fe93a63a802a6b8564dc18650a7e023c82f87b199ce76cbe8b961ed4041f7c36272b35b9ea64a75dcec1760630c71111587e79cd35c3740a2c78d9fe1c3a5a25890447757b679f7820edcc79c112a872c75833c6b0a4a37b985fbcebff79981fa26769f469e729f788ccbe5a5775f0ac946a686bbde06f05553a7607ac2e7669b78c434684af9f33f4896cd85693da805d96b193ff938e73e492d64baa3ced8a216626c5b196fbbb2aa2053e447d2968e24d6cf7c779d3a16f9123395503cdcc9f5c1f701699f212c4dcf3b52704353d0506a57b4dd1cb7c9d5ed3e2cb7a292302c1de2ba8da880e3b638118b6f1a2791cea11362dcbb253b7f00c014f871759e3e84857172a549c7c69bcc1cac2fcdefcba5077c47b3b3ecd9d35a2eade62171cd3a42c72adbbee04472a382d274a75cb1e7f2d3bed167e04e98062b4ec4d146bc47ec98c6c653ae8c5a5f81cddb5796583e0a173f0c5e51875d4e6d1f64659bf4b162122bc768e617e6c44a5db2faecde77ed6eaf51cf6c140335e8ee12e7aa88ec58e8f067839aedc0c5334d8880bc2fc2a6f62c287640138ba85fbd8be647baf277afb97b8f4189067a5bac8c80f5254abba9a0c2bd280a59d4ab15247a9e3b5d8695ece31b5de94220657ad575387a57b884c8858577483072bb1be2cd2e48143be737cfc7141c81b7ce163db19b18808006a25ac6be2c5c06d6319275d72c3a60e241077642be4553390f39a150ee5b7ea399195c4c188c7cf496360a0bae77d0b6328ef1dca574bac8d63f20cc29a3706ddf13b614c22384865c72eb6b12d6de64e06a5d91026805dce15fab392fb8d9490ec801a19105831905de5b30c0cbe60ccdf7629c130dadf65d433c9523a64b2088e7a01247f527064211256da03a0683b9153ebb737466325a0f387f8215bfb510310a5b288db288d8ffd110f0971a6d6013ba851cdb17b98a44b86bdae75d81e9f135053d47c671e52e86b77bb4914a1c303b39f3ffff5bfa2fedb144c20964aced487ef559bce35cd170ee0caec0037ebbc4ce1e05c5dbe8c3e89699614435201efe1031714c6b9ceeefc7fd74db99766e0d60de80305eb8c8109abdfbb6d88f8b1e7f54e1eab375dc03a722d55cd842ba45aa0b53defd37ea065a65f62cbdd2fa58c7c9d391626b787f5cda1c5e0e165ff77c4ce3bee3908404ba1c2639bb101595cc91d28cfe4e56edd9bda53a4bfe589fd84d5d222f48d3ce26d5d8383db081d43c6f7d2c4bdc7eb509cf667d75fc47d7f494fb88097af96dd745930db56520f57d4389afb4f73b45e4b76ebe868b73df86a5880f70642086395efabe5969ce6531d26b48372dffd0ad1d3d09794942e74cebf1921434d01b652f592330abdbac4f4d29e8ed6ee1ca769dadbb09cc2078263fba8d0a7bed9d90a0a3a4ec2bf50bd859b6657367df0b938911010db0af608716abcce8e82de40512b92e7c6c238617cab32b557323665bf8349193cb9ad907b175575598eb147e0eeb6a256dc8318dda8e1efad005185e6ea1dd547daa0e655981a1a7902d0397dd6a12f058dd1e13c853b9e086166b30f47d188ab286584411f50b8c37ffb7cc352c48c3554a94b854ca41c85542df6c9ea69e7accb25e89a11a46028afd3aeead3fc45c89a25c9a181971d47c665480be2407fe2fc2b207e559568104a27465ad80b7cd4e8d25609c38a1055ebf5156f545077c40cc5a883f8051957a6a850453685d9260e9652f421307d4355a4dbb9f35ecec55da971fc3b35c42eca7515c9c5d62db3ad67ba0a3e23365fa5d0e9e37cb11150fe67a28b3617fefc8103ad68ae692eafee5b49dceed1db2077ed55fc9a3f33abc976d7a07ba1f257560d4bb2df1993e710409ce617e68b43709d9112cceeed8d122964f939059f7ceb89bb1bfb2d6fd737bba4fe695ed4e968fe5010ca8f3996e664dfca3f8a262b896b1192cab459805c0f5bd35fca881683b96eaa192049b8d9ae4a01c23b789b26bad4552cb647175257a286d428ca17b0a4a14fb0b4ddabc712e997dc70d0268812070b6f7df1803b58f43da6247a4e7f28c221ad7dca615ee5562cdce57e9e91ce6372f3d82c7fe24f8ca056bdc2e043f74546ad0de59da38edfa1ada1c82dd9331934eacfb520d5b47da997368537e329c18cb4ad3ee5f1a6d2138b362978670966d98e6147ad375185c83fba89defa8bd5803845fec3dd632a09f60f1429212d404b8fcd4af1658e6baa3e0a78e174fe77268d8fb656ef93a4988fe78e4a1c49a79c4c1bb0acddd0aeff60913b1d6ca5c24c2c0b097acd3f2d0fbb37ed56c7a84f7ba2b255fccf47e08afcf5e25962ef2a94dbe3f1132ded8b7229d52317c7cb995c60bb77253bf28bf2e2b2e878ecaba1be7302fd21b739ac3aa0efa2cde7e92177f1e0b96a7ca94e6ed37b78328c3c214fdcf7291ae6c09a148e5fe8f94afceb15e63ab21e0ba96aa2d1f86bd3cc87974edbdb84f7a5caea9e44b6e671b4f2e21943f3d680c26d306138cbe98e93223efb7569b1b14bf533d33f0047d05e29839a97308227b748b0969d9c8c156e7c79bb2906265473e0d57dcd581230864ad10b06116b0d5a30584b3974536acdfde634aa5d93a79ad78ba6e00238425689c73cfcba4364beaa9ee3bcc546331a062c244d5d6baf14805be5175f8dbd201a0d70b65bbaf7d6171b1be0965864441ca5eabad65e1f73a6e85c2cef4c3967ada10aae6fcb0153cad3a259b51893b459dd664a4e488a4e9fecc5f8822ed402a7c79dece3da34dd5c37169875d80acb37faec072a769fce5b738ef9faa7029d9dceeb033577852a4194fadf17766bb2b8a604362ff28ccd56aa2dde4a93928ea0ddc40423f2d64f4750bec70fce9616554192cd209e9d92ac050cd209f172a19a2dad7966eaed0a4033d9f7b94fc6f8214b31176192e00d0e748c7c1c3a1de3d1ef6c93558608a4ff802c3a90395627cc917e19ecaf0e9b39d205ed01a12c9de632d003607d685c188022dd653a1b6b18157be93b9f340b91bd2919e63dae3c81dfbb85950aa30199489aa0a13d8849f59a46b6b41f985a0020122bf5c07a92846834b805c8c3aede512666a4d0c137ded32f9964c5ba95f8626289e7ff34dd5bf52981fbfb265afc9f4c56349f9b79c5f4f3a8f55ea7730b6bf34d86cca0b31bb29d9f5c2745e6afe67083db5309f2c732aacff548a472b5b4becf022e3e364c1406c0ad542d7f59498de0c6c2803e305f51c60145aa0ffc81f1ae69dcb58037cc3372868b1b47e11ad8884a3b7daec2e909a4a281d1aea555c239e0b299c3e437316cca809e8978b14685e7f006a57b1fcb48184d2cd38e9ec4e32001ed490ae5d472f06c727bcb9b0bd0d790344fdbe2a73ab512c95e8febc02324359845efb2adac6b63577dbb275bc5a5fcab2bb53c08c2abe97d83d61616f3b2d1c4d21a01a15722c179c9b34c5a867e5f8e7778b812924bad629b398431299ee7274afe1ad0eaddc9836533db1e27d01b1a3a097f4286edaa0fa6b5e1b7abe4f1c0b58736aa4f63ed34bf8f274c8aa5eb10bc58056d73fd7c9aecce0b125fd014bab794d1e0199af69c6e46570d73e796e29713b25f540937a2cd6b1e420f0f9ac52805cd4c34a135220647121a668674a8ed7b24d35ee8265a77ba6f13d22f4dd91b7daeed3f1b28ab12439f34d9af4b655269e86d605e574ef534a68f90197a7ea7834023ee3bef9c73234d65d4b1b718438a9cb2f5118eff1e80d86d14c14932cf7c885b0d24a31c0a9269e37972eb2eba9021ca0f3f4c7065f148a37700c3df7c1a22d05e49b48d7d040351a62d09f99063991b8e07305cb39bb83a5c28abfc75a949bc720fb3097b1c5c629764ba5240607a040b8a12d414225cf504647f579c1ac505d79191aba8ef508158e96c3bb650cdec5f6efc4834e0a152414a207d94258dbe723cc12b783df571b730914c998bc36b45de558b95d1a8e1f5731c733e8c3d345a4f2f919f6db77576afaa148b1cf975429248a92e723a5fa0322628c3a018c330852e0d095e2bf3ef26393fa04d277ee288c09b60c7016e3607ed82b16670a91ab58cd6a73ec287565399b8af07d4072433e5fe99f514fccfb067384f10be0f39802cd5e0385960b8503ff8f4b9852cfe8ef551c25f54a3c32b0bae12f1c18d958fded6e81738cd8b6706685b9ce56be8ac75871c1cc9e672a81b520375370b0cfa79ac284ea68811ed5cfad85750837284d9119966dc7f86cdfdff42f20d26706ee18f8f3c7d219a0010aa0dd82388b1c10f1582bf05443429ad3f55b8f2250f20e7c5fb813a27d1a1d897f54d371f091f9e5c64fd6e1f109e57dc4ab45bad490f62babe71f0cfb2108e577dbecfc321045fd64781246359686f609bc1c748d92fc6083855bec4058c43e380c90d8cc0ad1f1adc15718bc303e1f0d4722e4118d9252fe1b8d47555cdea849663c5c5b252575941c581d196f019c1bd7c5309a85a56ec46ab107b82445854b474e41cf85fdba4904f4c2c9005295b75a3a6c548263a089461932e520f915d18fb5f22ebecded30a8fa6c8e605e6aeec9bbfd4a6d749e9ab6a829d982ac05edda0282c1d9afa972d00bcbb4a5b1f2c7660b35ea815a1e3a3034a55f172fbb79064bd1c66bcdf4781d7dff5215ee08dc430a981d1664e8d198510ab713e233ea2efd4802c3f7d9a60b3bb974f7d9e4d413f0aaa2fbc291a78c15f0584caf1973cc4b967375be377dd1b66f53431682a7143c3a755b2b007c598037c4cc6a325b068ae27b6d578fbe8d9a8000f2609d8090e8780c882d89758d28628bb554f7b7c97de741f6e65ba00899acae972412811d4971f15e2e4f7c7f93bf7804105a4deb7f2969cf103845e810bb1aea96c1cf4cc3715a1266ce403bb433b52c945caa99d21894d08c19bcf96cfca36409242c488a47ad778c38512cc16fc1c80bd95b5c1a2e4078bd6e2dfbf66524eff62106f9caf61ad4a6fdad08661740c8a5314e5fc8cb1ed9e666342f8a60d81fd210da952f152ac4492c85eb9a56b5d28c73c29aa9b912e47ed", 0x1000, 0x3}, {&(0x7f0000002640)="9126b3dafbe07ba5eca5e9063ccd84ac7776a591c27c2f08cec3815441e6d281ca338a4aeb29d619eb73b35b3d01f545db760394cb756964c832c7cadd38a6f905f9dda28dbd479d9a737d230179a1e7bdff25412e919f67de3d95c7f197c613319a2fd84427838229242bf1594cda77c9bfe6e197b92474b82c78eb5c9560f0a1a165a6ffcbc663f93bd91d", 0x8c, 0x5}, {&(0x7f0000002700)="0259f8c2c14149f97446063f34ba193dd7de3a637238a354a40b259720c529a58a4e57cc2fd1044b939eaced35417b1209ca4a3f5e781c8eef3be996a654168453b8a7c188ee002a1db2f17a35e5c9b78cc1d5d727a6fbc5d627f91d125b3a090874dd3e8a189d5704828b7143d7b3d8e97e4168773198d52b8005ad14eb6ec6dc06187a753d19a5a5c28628a3d9eed758f06a91d1ec71c6cbaa3358ce395b97486751e5b5606c4a93505e5fd6d2a0a6ac169ddbb8f1e1b8d7764e76c937a8e9b122b9fdc538fa2638ba51f74035fe3e2feb5d4dc98157fef4cd7561b7ab6e5ee83f7c8266f9", 0xe6, 0x6}, {&(0x7f0000002800)="a23a02aa89ed6cd57c7dc57c68a85b0415520914cdb5a03e5ee215811d553746ca96fc6e82217a9b599a1b809d025c8faf37b11b4cfea8c82d392dee6ef597d848d7fd", 0x43, 0x6}], 0x141004, &(0x7f0000002900)={[{@norecovery}, {@order_relaxed}, {}, {@norecovery}, {@discard}], [{@fsname={'fsname', 0x3d, 'batadv\x00'}}, {@audit}, {@permit_directio}, {@dont_appraise}]}) bpf$PROG_LOAD(0x5, &(0x7f0000000040)={0x19, 0x4, &(0x7f0000001200)=ANY=[@ANYBLOB="1800000000000000000000000000000061112000000000009500000000000000eb2f1610ed29861e0c35de4c04f155bc229401a3677031f050b7b66db75ce6374c0eef12a00ca5e215cd841047bd8339576830b19d9a27ed7c535140a78a6cfefd9892db52e339cf522284e0d9d34f5bb39073c3c43b1f0f9c3ad79a39db74ea28d98b93dfe65703e01df540845983ed5d66250adf3dc1644b50e3a0875a07bc61f3d65161998a736643a1e6057d8c1935681239c74db352c66094e7c9fdce5ddd6ece0a32085b93fe4a5332a9d2638c8a1a0db05f858dfa8bf47d41f641871018d42ba7ce01a0a09a628a13a8a47f48fc133205e22c2609a624741e34e60ee76254cbdfef0057ab76afcfe05dc7fc9d"], &(0x7f00000000c0)='GPL\x00', 0x4, 0x1000, &(0x7f0000000200)=""/4096, 0x0, 0x0, '\x00', 0x0, 0x15, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x70) sendmsg$NL80211_CMD_FRAME(0xffffffffffffffff, 0x0, 0x0) [ 298.439022][T10304] loop2: detected capacity change from 0 to 4 17:49:26 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, 0x0}, 0x0) [ 298.541985][T10304] erofs: (device loop2): mounted with root inode @ nid 36. [ 298.542982][T10306] loop3: detected capacity change from 0 to 8 17:49:26 executing program 0: r0 = socket$inet6_tcp(0xa, 0x1, 0x0) connect$inet6(r0, &(0x7f0000000000)={0xa, 0x4001, 0x0, @dev={0xfe, 0x80, '\x00', 0x1c}, 0xd}, 0x1c) r1 = perf_event_open(&(0x7f00000012c0)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) sendto$inet6(r0, &(0x7f0000000200)='\n', 0xfffffdef, 0x4d87a, 0x0, 0x1f4) bind$inet6(r0, &(0x7f0000000040)={0xa, 0x4e24, 0x2, @rand_addr=' \x01\x00', 0x3}, 0x1c) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r3, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r4, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r5, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) splice(r3, &(0x7f0000000080)=0x3, r1, &(0x7f00000000c0)=0x80000000, 0x10001, 0x0) [ 298.843546][T10311] loop3: detected capacity change from 0 to 8 17:49:26 executing program 2: syz_mount_image$btrfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x4, &(0x7f0000000200)=[{&(0x7f0000010000)="90e42e8500000000000000000000000000000000000000000000000000000000f90cac8b044b4fa88bee4b8d3da88dc2000001000000000001000000000000005f42485266535f4d07000000000000000000500000000000001010000000000000000000000000000000000000000000000000010000000000d0000000000000060000000000000001000000000000000010000000100000001000000010000061000000040000000000000000000000000000000000000000000000450300000000000000000000000100000000000000000000010000000000007200000000000010000000100000001000000000000000000000000000000000000000000000000000000000000000001a8885d61aee4febb69bd33546bd0e04f90cac8b044b4fa88bee4b8d3da88dc2", 0x12b, 0x410000}, {&(0x7f0000010200)="8ffe4b2f0007", 0x6, 0x10220}, {&(0x7f0000010300)="00000000000000000000000001000000000000e40000100000000000000040000000000002000000000000000000010000000000020000000000000000100000001000000010000001000000010000000000000000001000000000001a8885d61aee4febb69bd33546bd0e04", 0x6c, 0x10320}, {&(0x7f0000010400)="00000000000000000000000010500000000000050000000000000000101000000000000400000000000000002050000000000005000000000000000000500000000000040000000000000000705000000000000400000000000000008050000000000004000000000000000000000100000000008000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000870198e4e97e37b10000000006000000000000000010100000000000040000000000000000b0500000000000060000000000000000d050000000000006000000000000000000510000000000060000000000000000605000000000000600000000000000000000010000000000d0000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000005000000000000700000000000000001010000000000004000000000000000010500000000000070000000000000000d050000000000006000000000000000000510000000000060000000000000000605000000000000600000000000000000000010000000000d000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000050500000000000040000000000000000101000000000000400000000000000006050000000000004000000000000000000500000000000040000000000000000705000000000000400000000000000008050000000000004000000000000000000000100000000008000000000000001", 0x274, 0x10b20}], 0x0, &(0x7f00000005c0)={[{@nospace_cache}, {@space_cache}]}) bpf$OBJ_GET_MAP(0x7, &(0x7f0000000180)={&(0x7f0000000140)='./file0\x00', 0x0, 0x38}, 0x10) getsockopt$inet_IP_IPSEC_POLICY(0xffffffffffffffff, 0x0, 0x10, &(0x7f0000000340)={{{@in6, @in=@private, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, {{@in6=@empty}, 0x0, @in6=@ipv4={""/10, ""/2, @multicast1}}}, &(0x7f0000000240)=0xe4) syz_mount_image$gfs2meta(&(0x7f00000002c0), &(0x7f0000000280)='./file0\x00', 0x7fff, 0x0, &(0x7f00000018c0), 0x80, &(0x7f0000000440)={[], [{@euid_lt={'euid<', r0}}, {@rootcontext={'rootcontext', 0x3d, 'unconfined_u'}}, {@euid_gt={'euid>', r0}}, {@smackfsdef}, {@smackfsdef={'smackfsdef', 0x3d, ']'}}]}) r1 = socket$inet6_tcp(0xa, 0x1, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0}, &(0x7f0000cab000)=0x6) chown(&(0x7f00000001c0)='./file0\x00', r2, 0x0) chown(&(0x7f0000001d40)='./file0\x00', r2, 0xee00) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000001c80)={0xffffffffffffffff, 0xc0, &(0x7f0000001bc0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ""/16, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000001a80)=0x1, 0x0, 0x0, 0x0, &(0x7f0000001ac0)={0x8, 0x1}, 0x0, 0x0, &(0x7f0000001b00)={0x1, 0x9, 0x3ff}, &(0x7f0000001b40)=0x33, 0x0, 0x0, 0x0, 0x0, &(0x7f0000001b80)=0x7}}, 0x10) r4 = bpf$PROG_LOAD(0x5, &(0x7f0000001cc0)={0x18, 0x6, &(0x7f0000001d80)=ANY=[@ANYBLOB="180000000700002000000000090000008510000007000000183100000100000000000000000099e14661510be39b687336fa27c8bd00009500007740000000"], &(0x7f00000019c0)='syzkaller\x00', 0x8001, 0x0, 0x0, 0x41100, 0x7, '\x00', 0x0, 0x6, 0xffffffffffffffff, 0x8, &(0x7f0000001a00)={0x1, 0x1}, 0x8, 0x10, &(0x7f0000001a40)={0x4, 0x3, 0x2, 0x3}, 0x10, r3}, 0x74) r5 = bpf$MAP_CREATE(0x0, &(0x7f0000000140)={0x16, 0x0, 0x1c90, 0x2, 0x11}, 0x40) bpf$MAP_UPDATE_ELEM(0x2, &(0x7f0000000180)={r5, 0x0, 0x0, 0x7fffffffefff}, 0x1c) r6 = socket$nl_generic(0x10, 0x3, 0x10) r7 = socket$nl_generic(0x10, 0x3, 0x10) r8 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r6, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r7, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r8, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r9, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) setsockopt$sock_attach_bpf(r7, 0x1, 0x32, &(0x7f0000000300)=r4, 0x4) umount2(&(0x7f00000001c0)='./file1\x00', 0xf) lsetxattr$trusted_overlay_redirect(&(0x7f0000000040)='./file0\x00', &(0x7f0000000080), &(0x7f00000000c0)='./file0\x00', 0x8, 0x0) 17:49:26 executing program 3: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x4000012, r1, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x1000007, 0x800000000009032, 0xffffffffffffffff, 0x0) openat$dlm_control(0xffffff9c, &(0x7f0000000080), 0x800, 0x0) syz_mount_image$squashfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x1000, 0x1, &(0x7f0000000200)=[{&(0x7f0000010000)="6873717307000000911d675f001000000013000001000c00d000020004", 0x1d}], 0x0, &(0x7f0000010200)) 17:49:27 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={0x0, 0x1a0}}, 0x0) [ 299.464961][T10326] loop2: detected capacity change from 0 to 16640 [ 299.609858][T10326] loop2: detected capacity change from 0 to 63 17:49:27 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={0x0, 0x1a0}}, 0x0) [ 299.654306][T10326] gfs2meta: Unknown parameter 'euid<00000000000000000000' [ 299.771923][T10326] loop2: detected capacity change from 0 to 16640 [ 299.941329][T10326] loop2: detected capacity change from 0 to 63 [ 299.980481][T10326] gfs2meta: Unknown parameter 'euid<00000000000000000000' [ 300.101188][T10331] loop3: detected capacity change from 0 to 8 17:49:28 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={0x0, 0x1a0}}, 0x0) 17:49:28 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$ethtool(&(0x7f0000000000), 0xffffffffffffffff) sendmsg$ETHTOOL_MSG_STRSET_GET(r0, &(0x7f0000000100)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000140)={0x18, r1, 0x3fb, 0x0, 0x0, {}, [@ETHTOOL_A_STRSET_HEADER={0x4}]}, 0x18}}, 0x0) ioctl$int_in(r0, 0x5452, &(0x7f0000000180)=0x7) read(r0, &(0x7f0000000040)=""/100, 0x64) r2 = openat$proc_capi20ncci(0xffffff9c, &(0x7f00000001c0), 0x8000, 0x0) recvmmsg(r2, &(0x7f0000002b80)=[{{&(0x7f0000000200)=@l2tp={0x2, 0x0, @broadcast}, 0x80, &(0x7f0000000440)=[{&(0x7f0000000280)=""/190, 0xbe}, {&(0x7f0000000340)=""/224, 0xe0}], 0x2, &(0x7f0000000480)=""/73, 0x49}, 0xff}, {{0x0, 0x0, &(0x7f0000000900)=[{&(0x7f0000000500)=""/180, 0xb4}, {&(0x7f00000005c0)=""/230, 0xe6}, {&(0x7f00000006c0)=""/23, 0x17}, {&(0x7f0000000700)=""/244, 0xf4}, {&(0x7f0000000800)=""/81, 0x51}, {&(0x7f0000000880)=""/122, 0x7a}], 0x6, &(0x7f0000000940)=""/61, 0x3d}, 0xda}, {{&(0x7f0000000980)=@nl, 0x80, &(0x7f0000000a40)=[{&(0x7f0000000a00)=""/23, 0x17}], 0x1, &(0x7f0000000a80)=""/197, 0xc5}, 0x8000}, {{&(0x7f0000000b80)=@pppol2tp, 0x80, &(0x7f0000000c80)=[{&(0x7f0000000c00)=""/73, 0x49}], 0x1, &(0x7f0000000cc0)=""/4096, 0x1000}, 0x7}, {{0x0, 0x0, &(0x7f0000001d80)=[{&(0x7f0000001cc0)=""/88, 0x58}, {&(0x7f0000001d40)=""/50, 0x32}], 0x2}, 0xffffffff}, {{&(0x7f0000001dc0)=@sco={0x1f, @fixed}, 0x80, &(0x7f0000001fc0)=[{&(0x7f0000001e40)=""/230, 0xe6}, {&(0x7f0000001f40)=""/109, 0x6d}], 0x2, &(0x7f0000002000)=""/98, 0x62}, 0x8}, {{&(0x7f0000002080)=@ieee802154, 0x80, &(0x7f0000002400)=[{&(0x7f0000002100)=""/211, 0xd3}, {&(0x7f0000002200)=""/107, 0x6b}, {&(0x7f0000002280)=""/230, 0xe6}, {&(0x7f0000002380)=""/109, 0x6d}], 0x4, &(0x7f0000002440)=""/131, 0x83}}, {{&(0x7f0000002500)=@pppol2tpin6={0x18, 0x1, {0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, {0xa, 0x0, 0x0, @local}}}, 0x80, &(0x7f0000002a80)=[{&(0x7f0000002580)=""/59, 0x3b}, {&(0x7f00000025c0)=""/155, 0x9b}, {&(0x7f0000002680)=""/222, 0xde}, {&(0x7f0000002780)=""/252, 0xfc}, {&(0x7f0000002880)=""/238, 0xee}, {&(0x7f0000002980)=""/244, 0xf4}], 0x6, &(0x7f0000002ac0)=""/130, 0x82}, 0xffffff7f}], 0x8, 0x10020, 0x0) [ 300.288073][T10331] SQUASHFS error: Failed to read block 0x0: -5 [ 300.294617][T10331] unable to read xattr id index table 17:49:28 executing program 0: 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 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f00000007c0)=ANY=[@ANYBLOB="b702000014000000bfa30000000000000703000000feffff7a0af0fff8ffffff79a4f0ff00000000b7060000ffffffff2d6405000000000065040400010000000404000001007d60b7030000000000006a0a00fe00000000850000000d000000b7000000000000009500000000000000e3a333a0daf2f73451c0e17a606fe530cb7d7f933eda023ee7cf43548ee858e07dfbdfd43307c529a4ce6be614c2c794f72ebf5fe3178966170201000000000000008258f8dbe82e16cf8db9ff07068a9e0000000000000000000000000000c97822a4986765f09a920000000003000000c9a08be60000f2000018287ba7d8807c0ee93ea1bb7f00a15deb269d0a91985602763e4d70db04da006a3d6eef8fb7fcdd82eb1e4841a6e5f6c736ca55eca29effe5084e2a8c3a32798a47420748e3607235f93c5fc0eea40f013e18ab940ae4724d98f521cbe75bb22444e03a4f3fd39da854b32fe5d610884b75c8ac79338717293d65dd15fb587a0000002024e25770000013b81f2e43000000000000000000000000000000cdc4450a11fdcbddcdf8853154ee2bcafbea3973bf0ab8d7d161b27c0ae496f410938e8201dfb9250fe64ac5f2f09a92cedc5e44cda8c440f7ab3fd537af95742b3713225c5cf54a02fea013ef3937604038e4547ead0a08cf213a76aa561821610d709fd619d5963b2f9f41d0f0d3f24c6956ad104d00d029b8306f743e47b8e71c014117d841ae5b54f5bda46576293d984216d80d40fa7fd9c1fc1bb32a43581393365e1c317ba4d1228576b19eb4552798450cb2da2d2840d3b8e7bb038a5f599ccb575c"], &(0x7f0000000340)='syzkaller\x00'}, 0x48) bpf$BPF_PROG_TEST_RUN(0xa, &(0x7f0000000740)={r1, 0x8001a0, 0x1b, 0x5ac484bb51fa106a, &(0x7f0000000380)="4d50b441e692763513ef874588a8ffffff1f00000000122e25d30806", 0x0, 0x403, 0xe00, 0x22d}, 0x28) bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000340)={0x3, 0x2, &(0x7f0000000100)=@raw=[@call={0x85, 0x0, 0x0, 0x15}, @jmp={0x5, 0x0, 0x0, 0x0, 0x0, 0xfffffffffffffffe}], &(0x7f0000000140)='GPL\x00', 0x4, 0xe2, &(0x7f0000000180)=""/226, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x78) [ 300.434761][T10331] loop3: detected capacity change from 0 to 8 [ 300.459653][T10331] SQUASHFS error: Failed to read block 0x0: -5 [ 300.466246][T10331] unable to read xattr id index table 17:49:28 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3], 0x1a0}}, 0x0) 17:49:28 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r1 = syz_genetlink_get_family_id$tipc(&(0x7f00000002c0), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NETID(r0, &(0x7f0000000380)={&(0x7f0000000280)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000000340)={&(0x7f0000000300)={0x24, r1, 0x200, 0x70bd28, 0x25dfdbff, {{}, {}, {0x8, 0x2, 0x2}}, ["", "", "", "", "", "", "", ""]}, 0x24}, 0x1, 0x0, 0x0, 0x4008850}, 0x90) setrlimit(0xe, &(0x7f0000000100)={0x1, 0x3}) sched_setattr(0x0, &(0x7f00000001c0)={0x38, 0x2, 0x0, 0x0, 0x1}, 0x0) setrlimit(0x8, &(0x7f0000000040)={0x80000000, 0x4}) sched_setattr(0xffffffffffffffff, &(0x7f0000000140)={0x38, 0x0, 0x4, 0x101, 0x9024, 0x6, 0x1, 0x0, 0x2, 0x9}, 0x0) r2 = socket$kcm(0x10, 0x2, 0x0) setrlimit(0x9, &(0x7f0000000240)={0x3, 0xffff}) recvmsg$kcm(r2, &(0x7f0000000400)={0x0, 0x0, 0x0}, 0x0) r3 = signalfd(r2, &(0x7f0000000180)={[0xfffffffe, 0x5]}, 0x8) r4 = socket$can_j1939(0x1d, 0x2, 0x7) ioctl$sock_kcm_SIOCKCMCLONE(r3, 0x89e2, &(0x7f0000000200)={r4}) socket$can_j1939(0x1d, 0x2, 0x7) sendmsg$kcm(r2, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000080)=[{&(0x7f00000000c0)="2e000000120081aee4050cecff0e02fa378b25db4cb904e473730e55cff26d1b0e001d00090000005e510befccd7", 0x11}], 0x1, 0x0, 0x0, 0x88a8ffff00000000}, 0x0) 17:49:29 executing program 3: 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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={&(0x7f0000000000), 0x4}, 0x8206}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) write$binfmt_elf64(r0, &(0x7f0000000740)=ANY=[@ANYBLOB], 0x272) syz_80211_join_ibss(&(0x7f0000000140)='wlan1\x00', &(0x7f0000000040)=@random="c902", 0x2, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000200), 0xffffffffffffffff) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000700)={'wlan1\x00', 0x0}) r4 = ioctl$LOOP_CTL_GET_FREE(0xffffffffffffffff, 0x4c82) ioctl$LOOP_CTL_REMOVE(0xffffffffffffffff, 0x4c81, r4) sendmsg$NL80211_CMD_SET_INTERFACE(r1, &(0x7f0000000340)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000240)={0x24, r2, 0x5, 0x0, 0x0, {{}, {@val={0x8, 0x3, r3}, @void}}, [@NL80211_ATTR_IFTYPE={0x8, 0x5, 0x3}]}, 0x24}}, 0x0) socket$inet_icmp_raw(0x2, 0x3, 0x1) ioctl$EXT4_IOC_ALLOC_DA_BLKS(r0, 0x660c) r5 = syz_init_net_socket$bt_l2cap(0x1f, 0x5, 0x0) connect$bt_l2cap(r5, 0x0, 0x0) ioctl$BTRFS_IOC_QUOTA_RESCAN_STATUS(0xffffffffffffffff, 0x8040942d, &(0x7f0000000180)) sendmsg$NL80211_CMD_FRAME(0xffffffffffffffff, &(0x7f00000000c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x8000}, 0xc, &(0x7f0000000080)={&(0x7f0000000740)=ANY=[@ANYBLOB="90020000", @ANYRES16=r2, @ANYBLOB="00002bbd7000fcdbdf253b00000008000300", @ANYRES32=r3, @ANYBLOB="0c0099000100000007000000080057000f01000008009f00030000000800a000080000000800a0000100000008009f0006000000080022014a02000030023300308c8000080211000000fffffffffffffe3b287fa71814040e00000106304d006000aa327980390a1f892d1a0003049800000000000000800007001200000001000300000008ddeaf14bf64274b908ac4fe0a4e4119d728ad64fea00503b876eb3b37d54998c1d83ba04e948207abeafa7341313b8f2cdb22c4e76e76aa4fb07bd5949112b5010627f2d247fffc845a1feccf9540675fe7ed356b088d4cc48d07122675609ae24f579e51735631c7cbf624bbd9c6d26434f005468e3f24ea67ea13b786c7dea8ce2d1274870119d2b4aaaab335bdb4c63074f4eb55fc738d5bc12447f5ac13a3bb9c3b1abd4e4c5b1d6323e4d35887d5a398c0c1a424e38"], 0x290}, 0x1, 0x0, 0x0, 0x10}, 0x20008024) ioctl$ifreq_SIOCGIFINDEX_wireguard(0xffffffffffffffff, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r6 = socket$nl_generic(0x10, 0x3, 0x10) r7 = syz_genetlink_get_family_id$l2tp(&(0x7f0000000440), 0xffffffffffffffff) sendmsg$L2TP_CMD_SESSION_GET(r6, &(0x7f0000000500)={0x0, 0x0, &(0x7f00000004c0)={&(0x7f0000000080)={0x28, r7, 0x1, 0x0, 0x0, {0x7}, [@L2TP_ATTR_IFNAME={0x14}]}, 0x28}}, 0x0) sendmsg$L2TP_CMD_SESSION_GET(0xffffffffffffffff, &(0x7f0000000300)={&(0x7f0000000100)={0x10, 0x0, 0x0, 0x2000}, 0xc, &(0x7f00000002c0)={&(0x7f0000000280)={0x30, r7, 0x200, 0x70bd2b, 0x25dfdbfc, {}, [@L2TP_ATTR_PEER_COOKIE={0xc, 0x10, 0x800000000000}, @L2TP_ATTR_PW_TYPE={0x6, 0x1, 0x4}, @L2TP_ATTR_PEER_SESSION_ID={0x8, 0xc, 0x1}]}, 0x30}, 0x1, 0x0, 0x0, 0x10000800}, 0x44) [ 301.280044][T10371] netlink: 388 bytes leftover after parsing attributes in process `syz-executor.1'. [ 301.473219][ T8] wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 [ 301.481229][ T8] wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50 17:49:29 executing program 2: msgctl$IPC_STAT(0xffffffffffffffff, 0x2, &(0x7f0000001d40)=""/57) r0 = syz_usb_connect(0x0, 0x2d, &(0x7f0000000000)={{0x12, 0x1, 0x0, 0xf6, 0x2, 0x8, 0x20, 0x65a, 0x9, 0x1414, 0x0, 0x0, 0x0, 0x1, [{{0x9, 0x2, 0x1b, 0x1, 0x0, 0x0, 0x0, 0x0, [{{0x9, 0x4, 0x0, 0x0, 0x1, 0xd6, 0x33, 0x2, 0x0, [], [{{0x9, 0x5, 0x82, 0x2}}]}}]}}]}}, 0x0) r1 = syz_usb_connect$printer(0x6, 0x36, &(0x7f0000000040)={{0x12, 0x1, 0x200, 0x0, 0x0, 0x0, 0x10, 0x525, 0xa4a8, 0x40, 0x1, 0x2, 0x3, 0x1, [{{0x9, 0x2, 0x24, 0x1, 0x1, 0x8, 0xa0, 0x4, [{{0x9, 0x4, 0x0, 0xab, 0x1, 0x7, 0x1, 0x1, 0x36, "", {{{0x9, 0x5, 0x1, 0x2, 0x40, 0x4, 0xf7, 0x7}}, [{{0x9, 0x5, 0x82, 0x2, 0x40, 0xb3, 0x8, 0x3}}]}}}]}}]}}, &(0x7f0000000640)={0xa, &(0x7f0000000080)={0xa, 0x6, 0x300, 0x9, 0x0, 0x0, 0xff, 0x8d}, 0x5f, &(0x7f00000000c0)={0x5, 0xf, 0x5f, 0x5, [@ptm_cap={0x3}, @wireless={0xb, 0x10, 0x1, 0x4, 0x0, 0x1f, 0x7, 0x20, 0x8}, @ss_container_id={0x14, 0x10, 0x4, 0xf8, "61da464d83eec587ea83c80351a3b863"}, @ssp_cap={0x14, 0x10, 0xa, 0x2, 0x2, 0x6, 0xf00f, 0xcbe, [0xcf, 0xff]}, @ssp_cap={0x24, 0x10, 0xa, 0x81, 0x6, 0x2, 0xff00, 0xa5b3, [0x3f, 0x0, 0x30, 0xff0030, 0x0, 0xc0]}]}, 0xa, [{0xad, &(0x7f0000000140)=@string={0xad, 0x3, "7aba9aaf5ec3d4b277cdce3f0c4e42f85404bd3a587d6b8e7e1e287975b604162e2d64a3b4e195f4a1c63aecfea95c49327a0078c267bee85da3110ac0db3563fad6a27ad1b281f45102f10143c9a30a9acb48d45b111c0d1d88a255e24bcb145a3af9ac990749d0562a4cd6f20db8737bad9ecccd4b30671a2e8e40984f1b9f4cae04753eacd13bdd91db5983f9c3f1bf48e60ef2f3d7d209c6faa76878413a148a4d5e9ab5fecb5d8e26"}}, {0xb5, &(0x7f0000000200)=@string={0xb5, 0x3, "c628438fcac0b759de5c20c63f2f84e5a51d87b565666219b112330234eb67fbdccfa85fe1bc6cbbd29b53729eb56ae649cb3ab33b094bd50021dd9cd83a07275343caed95922d4672fba8f3989fd92523b1a2cd5367f22e2151117b566d68f1238217c1d889e1d5c3ca6541a152a24b1c49b54faa3fd5a9b2190790ca4cacf606f22a2f19dad12d6fad8480f6b38e7bdb0c111efc853fcdfdd1ba2b74b1c13820870b033de8e518c801584dbebe82fe3e83c2"}}, {0x46, &(0x7f00000002c0)=@string={0x46, 0x3, "fd53fb281b4a339c6e570412301f96c64524dad6dec2e667b5907107194c5bba77e7dff4352ec81e0b713a06de7a72f5dcc07539cbff054fcf90eeb1639ce9f7ed154963"}}, {0xa6, &(0x7f0000000340)=@string={0xa6, 0x3, "2f0f2f44be17d812ab111576fb3583a1c979e6472d7499a3d056be03482827fae15416a3bcb18a832274188e42782b653cd6f3568892e94fe6af20cb9a2fbcb20b3a15f14c3f121922819f4e5f38851dd14b3eff058a411361e33eafb48f59bfce9490d4d48c900beed7e99d252ea77ddd7ae2a8a6133770a4dfcce4e1bbfc78de5ac555e5896eaf126092734c9109a7fe7b70869344859303b55cfd0dd0c109a497c3bf"}}, {0x21, &(0x7f0000000400)=@string={0x21, 0x3, "c674c3d30d3cf3bb3769c7129a5ce69641649c00b6d702fbbd1bf32fa96e94"}}, {0x4, &(0x7f0000000440)=@lang_id={0x4, 0x3, 0x416}}, {0x4, &(0x7f0000000480)=@lang_id={0x4, 0x3, 0x3401}}, {0x4, &(0x7f00000004c0)=@lang_id={0x4, 0x3, 0x41b}}, {0xd9, &(0x7f0000000500)=@string={0xd9, 0x3, "e2b608346fd735b95e88f1a0cf6b92c3f4aeec0cb9606fc3f7cdc2b9036f0aa01b176549c380a9067f8f6a2caf72ae7362f4dba9368e8e6e025f8103222e6eb0303f95463278958ec83110ef0e1fe775d6ff5793c375f78e1c5e7cf711513438744b4ac9e62e5a9baf4a8d18990cd54446ff6ad4cbef189ca03fd3f5ea4f38fead606115ffb65f689e3327236d349934764783faf736ed3ea23ef00bd505200a77263c5b9e1561e6d3c4167e814ec705c7b29296cea1ba8a908cae38cd7b73e44c71ec1102b4d9b7803bf64efcd732f373ab72ea2ab257"}}, {0x13, &(0x7f0000000600)=@string={0x13, 0x3, "e22bc531be0a7c0ff2a8e75e274bd8e2b7"}}]}) syz_usb_control_io(r1, &(0x7f0000000b80)={0x18, &(0x7f00000006c0)={0x0, 0x24, 0xa4, {0xa4, 0x5, "6754f5021493c5f484e51100078c0db6e726f3d405b9aea5328b18b3655290a3b24bffb129f49f7937c54f1b8078866d4823de8e2964b3f6a7597bb88677e20f1dcb67070bc8cc54d392dd355fc509962441a247af938d320d75a726461ed63df3e71106350d356ad34e919848f717a103c962fcae66d02648b0f9ae35b1b234d073562eaf93e2c82b48b1554af01fd2dac82647a84373500238f4f22b6b965c9416"}}, &(0x7f0000000780)={0x0, 0x3, 0x73, @string={0x73, 0x3, "c0716117567f4e4e3086474e1a93e330ffb1cc82e5e119b10a7a1101c884e30eb3d3ad112cfd98050091b697b0eb178df5ed196479a6028b30f2c2083c46bfb6436243d41b4d4210d3430e39ec25b606e058020718bcc3733cc4b27b7da04de437876de82e2ae34e94bd66d06589a7d84b"}}, &(0x7f0000000800)={0x0, 0xf, 0x2f7, {0x5, 0xf, 0x2f7, 0x6, [@generic={0xfd, 0x10, 0x1, "beb7942eed59c667528d77395fcd966e8368783b8ffb5fce06b4b8812f5d6f44e1fa82580d218acd26ec97a5d844d9f0c620fbd2dc04e153a4b6b49ad12378da4ad6b786c84790956748f5b1b09a31a2d31dc0957cf962a1114b9bb701b8bd1b2eacbf2e10d6a6d81b265da7602597c54eff643d2250cb8acab577795fd0031a5e6d7a21d802183449e3004a530c33936d5e219dae37dccfdd0f68d08287a5d1921701c23ecbaefb5a9a7eeeeff551797bd69373fbab53138107174cd104adf217adafa277f593214187e7da9cc0a6394503347cadf5e6a134e0f153631b4b6a4b948a3a17ecb31c1885990a8b79047744114c41086fc8141c21"}, @wireless={0xb, 0x10, 0x1, 0x8, 0x83, 0x4, 0x3, 0x0, 0x8}, @generic={0xd6, 0x10, 0x4, "aba6e86cf8cd027d278f49554b3169a92684bcaa22bb4098cef2dab3c1c660e9f354ab43c250b8496caf4f90662cfad2a949cd9a865563e63154fd125f0eb4beb1bd91c421244adc9baa57107324b7302190a19d40b77ef1fecd5ac83191f6e3a8c0297b810f8311a5620d000754e578c05a8f01d78846f3449aa36b560882866e6725068072865008ce407ed1e8877ca8a98f4c3023bf68a8a72b69763c27f30468cbf7371fabccd43ac0f023f27a2e88136cf37e3730d771976dbadd3d1e56fdf8b32e4084e9629984de78ba39c9b83501fa"}, @ss_cap={0xa, 0x10, 0x3, 0x2, 0x2, 0x5, 0x3, 0x6}, @wireless={0xb, 0x10, 0x1, 0x2, 0xc0, 0x8, 0x8, 0xae8, 0x40}, @generic={0xff, 0x10, 0x2, "55aea0f9b779a669347b828c0c4de7846252c0a09210430823437e7dc0f2612437c106fa53ebd1699acc39a15b6e82c4667613f37f948ebe952db01e94af85560e27477685906eb71fc82da436734a875f75c44ca4885e5b7c1993c84fe57bdf085041b271b9e9c7625a38e8506a2497ba03dd08392fa17fb48e6f8ea88e5f98ce0736ac56bb85b7a80c688cc707b2bdbae044560722c62b41b4e1c9250aae776c14b6468a6ac444cfb80a68141aed330d6184b0c729baf5b185a0b786e8c412cf7fe98e40677e06dcd33cf10548ef9de058668b0554dc01278fe071ebc691eab724fd88b7ac74584edcc0158e7089ba0c06b8149cc1acea59174b60"}]}}, &(0x7f0000000b00)={0x20, 0x29, 0xf, {0xf, 0x29, 0x6, 0x18, 0x4, 0x40, "54f72d98", "9cb9031c"}}, &(0x7f0000000b40)={0x20, 0x2a, 0xc, {0xc, 0x2a, 0xff, 0x1, 0x1, 0x7, 0x9, 0x61, 0x3}}}, &(0x7f0000001080)={0x44, &(0x7f0000001d80)=ANY=[@ANYBLOB="2030d3000000873ed50a13b84a03b71e5f6191d38af30420679e33a2371505eef40dab0c7fc0c2228ec5aca2d6961557eb3dc474b9479c0e1ce1297e25025316cb4cd7c5019345d8aff0396c48ee2a47ba5212703efa82aab072e7356253da19c8283841bc35af9eca09073e40197a6eeb3e8d7dae5ee73b0f12eb9b89545914e2f636183189352f56893e03916ea11bb00d4ea90f263146497918f84d5869d8908637d22817c117b2d3eb194fa457aaa234b88e1d0cc508b9fd33e46e816d3a463cfdff5b30c9d2d2b131da24d98c1b3ab563fc42852906e999024fa8833de33e49c3004c667ac5252124fbaa993348067954448b5cc61f3e5046449320bb6ec2fb6866304a1c81191655f13f262d2e3264a484e561fc679d808292682dc66f9c9c2b0037ea5e5059029b9b52b5e8a9180a824a4dc58094c1fa9b04cf914d0ac398c5ba37daa4d23fc8960dca89efa98acace3aa2"], &(0x7f0000000cc0)={0x0, 0xa, 0x1, 0x10}, &(0x7f0000000d00)={0x0, 0x8, 0x1, 0x3}, &(0x7f0000000d40)={0x20, 0x0, 0x4, {0x2, 0x1}}, &(0x7f0000000d80)={0x20, 0x0, 0x4, {0x0, 0x40}}, &(0x7f0000000dc0)={0x40, 0x7, 0x2, 0x3}, &(0x7f0000000e00)={0x40, 0x9, 0x1, 0x4}, &(0x7f0000000e40)={0x40, 0xb, 0x2, "f661"}, &(0x7f0000000e80)={0x40, 0xf, 0x2, 0x3}, &(0x7f0000000ec0)={0x40, 0x13, 0x6, @local}, &(0x7f0000000f00)={0x40, 0x17, 0x6, @dev={'\xaa\xaa\xaa\xaa\xaa', 0x43}}, &(0x7f0000000f40)={0x40, 0x19, 0x2, "eca5"}, &(0x7f0000000f80)={0x40, 0x1a, 0x2, 0x4f}, &(0x7f0000000fc0)={0x40, 0x1c, 0x1, 0x1f}, &(0x7f0000001000)={0x40, 0x1e, 0x1, 0xff}, &(0x7f0000001040)={0x40, 0x21, 0x1, 0x4}}) r2 = syz_usb_connect(0x0, 0x24, &(0x7f0000000100)=ANY=[@ANYBLOB="12010000ce4e80400120001af18d000000010902120001000000000904"], 0x0) syz_usb_control_io(r0, &(0x7f0000001840)={0x18, &(0x7f0000001500)={0x20, 0x30, 0x46, {0x46, 0x21, "6f226a90a880a33997fd3cc4e6291031a1490aefcbe76a553ad9f515fdd89b2548f42c89caf59eeed100db8df9a2d38f9dc475733e3b72d3705337a567cb49da49819f3b"}}, &(0x7f0000001580)={0x0, 0x3, 0xdd, @string={0xdd, 0x3, "35fd7b5864f544bab10c64d36a18b76184ccdca911f0ff6672f90e7e3cc0609d83f08a23f32eefb2c5c188d7e1cce06e317167ef2a015ba62c4c52479ae32e4b3b6dd1a7b57df30438f2d3617e7e7002576d39b5d5513b222d2b2df7fc86809bf0e56f024702f63af005d402dade5cc85961fb06aafc4c87b23fc88a056a4d404c805280cb0550b0713d65ff31fa0e37eb4c44f2e10e9645a01e7d5adc17250349369a352599e0ac9d09800393816f545ca9aaebfbbfc252371216441128d156cff4b848d469e3aba503b7b270db90e794dc9fa4dfcd4bfa63e63c"}}, &(0x7f0000001680)={0x0, 0xf, 0x111, {0x5, 0xf, 0x111, 0x4, [@ss_cap={0xa, 0x10, 0x3, 0x0, 0x3, 0x4, 0x0, 0x4}, @generic={0xe7, 0x10, 0x1, "8c45bd389cdc37d2a9e846858a55a5c807ef658fc0af4414291d7877349ef6425d69aca77535f364ed1afb7f9d7a93f11a36f545c511fd0c1b114428fb703e2f8bd776a67819ff6efe5a76a263b5612b0121218025738eba2327c1b601e45e5a2c49e8f76d832b7781bdee296773471a2d80adfeb4e1a315bb09e5fd22a26380dd866234c0cc29d41794a4b63c2e16fa531f72c3efaca5b3458779083aa05a1e51a32fee66a704840c7cf69a1ec51285ec7945ad1213beaaa9f27f4b7638b1899e24343fde60ac3bd9245252ec216e777cb67f6b42ba75c2d8084854db85a458a70057ea"}, @ss_container_id={0x14, 0x10, 0x4, 0x8, "afae1259a9dc9d6ccb18c0c036bf304e"}, @ext_cap={0x7, 0x10, 0x2, 0xa, 0x0, 0x7, 0x1f}]}}, &(0x7f00000017c0)={0x20, 0x29, 0xf, {0xf, 0x29, 0x3, 0x60, 0x9b, 0xc0, "13eed12c", "98fdb765"}}, &(0x7f0000001800)={0x20, 0x2a, 0xc, {0xc, 0x2a, 0x81, 0x10, 0x7, 0x6, 0x6, 0x2, 0x7fff}}}, &(0x7f0000001cc0)={0x44, &(0x7f0000001880)={0x0, 0x14, 0x71, "0e4e6bb0aca1ee28fb1ffcfa601b3026489340bd658b296ef4ab1bc1b4ad702d9ed18a9587a8ef2e017779d18f741b5de65b8997c39b3566ce511bd823cadf4b1607cb0e73318a249a155fcbd50d06740ec554a53f07feb6003b8e0871748c5eb22c07de7403c42a866da977c5b7568efe"}, &(0x7f0000001900)={0x0, 0xa, 0x1, 0x6c}, &(0x7f0000001940)={0x0, 0x8, 0x1, 0x20}, &(0x7f0000001980)={0x20, 0x0, 0x4, {0x2, 0x3}}, &(0x7f00000019c0)={0x20, 0x0, 0x4, {0x1e0, 0x40}}, &(0x7f0000001a00)={0x40, 0x7, 0x2, 0x5}, &(0x7f0000001a40)={0x40, 0x9, 0x1}, &(0x7f0000001a80)={0x40, 0xb, 0x2, "67e9"}, &(0x7f0000001ac0)={0x40, 0xf, 0x2, 0x1000}, &(0x7f0000001b00)={0x40, 0x13, 0x6, @link_local}, &(0x7f0000001b40)={0x40, 0x17, 0x6, @local}, &(0x7f0000001b80)={0x40, 0x19, 0x2, "5dfc"}, &(0x7f0000001bc0)={0x40, 0x1a, 0x2, 0x1}, &(0x7f0000001c00)={0x40, 0x1c, 0x1, 0xfd}, &(0x7f0000001c40)={0x40, 0x1e, 0x1}, &(0x7f0000001c80)={0x40, 0x21, 0x1, 0x3}}) syz_usb_control_io$hid(r2, 0x0, 0x0) syz_usb_control_io(r2, 0x0, 0x0) syz_usb_control_io$hid(r2, 0x0, 0x0) syz_usb_control_io(r2, 0x0, 0x0) syz_usb_control_io$hid(r2, &(0x7f0000001280)={0x14, &(0x7f0000001100)={0x0, 0x24, 0xb6, {0xb6, 0x14, "da52029b3094b82f5afe717ec2617d1572b3ad9463c991f98d9cb3aa31eaf6be82186b72c3068d7a0c334c4d0ec10eb11303a2e8601c340c9d504e81cc73629b111a4ea57641586b2b7636965ace32ee71fa45ca61b8df2b870654bcc29051c28e8cc4fa6e4fa68a3387d23cfcb2364819a4cc47f990af69efc7bb8d5e72e6162dbe3ca4a9fd4503258be2108fe16e1c347348a383e575328735ef36bd360a285b9a7112fbd532dc198ef21a6aac563d85c8deaa"}}, &(0x7f00000011c0)={0x0, 0x3, 0x4, @lang_id={0x4, 0x3, 0x437}}, &(0x7f0000001200)={0x0, 0x22, 0xd, {[@global=@item_4={0x3, 0x1, 0x4, "2edf571d"}, @global=@item_4={0x3, 0x1, 0x4, "1cb7821c"}, @global=@item_012={0x2, 0x1, 0x5, "adfd"}]}}, &(0x7f0000001240)={0x0, 0x21, 0x9, {0x9, 0x21, 0x3, 0x0, 0x1, {0x22, 0x2fd}}}}, &(0x7f00000014c0)={0x18, &(0x7f00000012c0)={0x0, 0x13, 0x49, "06bc5ff966ca4f3a92d5a70af9f5736b3988f20dd1bea7612c6aa2de41f850b4179d8eeb02d52e8fe18f469af3bca21bfb76094dbf484d736787353884494eea6fe71498707462f708"}, &(0x7f0000001340)={0x0, 0xa, 0x1, 0x2}, &(0x7f0000001380)={0x0, 0x8, 0x1, 0xf7}, &(0x7f00000013c0)={0x20, 0x1, 0xaf, "1a26a0ca12e33990dcc349cdc3002cb2c0246fb129392ec0a302b471374de972eb65c6c2312efe52eb70ede83a9212bba62771395615597dd32057194ab4c0023b00d51bb14015fb5dca728cdd54c514d9b0eb7ea4bcee1f40c8e075ba67019497f9a45bba00d44952d741a3bb4d7146d1013e19757b6c75b22ba3be6200fe07838cb4e57a7688df23170c09dc4720db7ee90875c874c4040e8fb1d2e0e6396468878f8b40716bcec6c46dbc8b6c7e"}, &(0x7f0000001480)={0x20, 0x3, 0x1, 0xff}}) 17:49:29 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3], 0x1a0}}, 0x0) 17:49:29 executing program 0: r0 = syz_usb_connect$hid(0x0, 0x3, &(0x7f0000000000)={{0x12, 0x1, 0x300, 0x0, 0x0, 0x0, 0x20, 0x461, 0x4e72, 0x40, 0x1, 0x2, 0x3, 0x1, [{{0x9, 0x2, 0x24, 0x1, 0x1, 0x0, 0x58, 0x4, [{{0x9, 0x4, 0x0, 0x2, 0x2, 0x3, 0x1, 0x5, 0x96, {0x9, 0x21, 0x0, 0x20, 0x1, {0x22, 0x73c}}, {{{0x9, 0x5, 0x81, 0x3, 0x200, 0x1, 0x7}}}}}]}}]}}, &(0x7f0000000440)={0xa, &(0x7f0000000040)={0xa, 0x6, 0x0, 0x2, 0x0, 0x2, 0x40}, 0x14, &(0x7f0000000080)={0x5, 0xf, 0x14, 0x2, [@generic={0x3}, @ssp_cap={0xc, 0x10, 0xa, 0x0, 0x0, 0x7}]}, 0x5, [{0x19, &(0x7f00000000c0)=@string={0x19, 0x3, "497a6bc417d3f41f7fef55c918af0877d71e094f69820b"}}, {0x41, &(0x7f0000000180)=@string={0x41, 0x3, "c6851f845c38ef42be2e83f28a4d1635d2413ce8768564a6675e3403c1e6bcd722ac1cadfc04f96ac4afdf92124d043a34f8f6da11aeacf90d49a68ee04b3c"}}, {0x4, &(0x7f0000000200)=@lang_id={0x4}}, {0x0, 0x0}, {0x0, 0x0}]}) syz_usb_control_io(0xffffffffffffffff, 0x0, 0x0) syz_usb_control_io$hid(0xffffffffffffffff, 0x0, 0x0) syz_usb_control_io(0xffffffffffffffff, 0x0, 0x0) syz_usb_control_io$hid(0xffffffffffffffff, &(0x7f0000000b00)={0x14, &(0x7f0000000980)={0x20, 0x5, 0xa6, {0xa6, 0x11, "6ecc617144a62556dae56d9d43c19636934ccaa53e3ac9813efc1d6e6d2ec2abe4d22489cfc3211dcc8d2009127cfbb9e62b9c317f19e144c9b6f938115188ba0be6408c6dede69632e1fa788fb101d88e7525c054a6443a9f92f05c5b684672b1e273c1c99e3ea7c55788c0f65e21632e55102ab7313ed6c7075a747bc35f7d1edafc6c051535b8e7cc0a92de3ab74f846270813f76ac96c787753644223b843b411c2d"}}, &(0x7f0000000dc0)=ANY=[@ANYBLOB="00030400010004030a34da94e281b7ccbacf5acb7d0016031678103c4425805c929e1d729397a0b34846db2e5dd040dc7a8937915958e7b5215956dad869b9960d6a5d702a58460c4724788b6bd823e66fe8fe73edad9f10111f0b0b0b7c635947b627084918eb84aa730eb4f0cc40044087edc2b10ac30ed917a6cc5a7e6b0319c9a03538fc303144ea68d17d6f714bda340bc6cbe30f8c8442f4eba86346ac6e0208000000be757f835076ce6deeb670ae923e77d2b8b38485658a88822e123587cfdae7648b21c201287052762c504970847643b1f484197db9e163e2235efde07fe7d60e2926aa2ee36cca638a5999fc4a587a9b85db544454d913aff7cf6ef2a08e00"/271], &(0x7f0000000a80)={0x0, 0x22, 0x18, {[@main=@item_012={0x1, 0x0, 0x8, 'U'}, @global=@item_4={0x3, 0x1, 0x1, "453ca2d5"}, @local=@item_012={0x1, 0x2, 0xa, "bb"}, @global=@item_012={0x1, 0x1, 0x9, "ca"}, @local=@item_4={0x3, 0x2, 0x7, "3f3782db"}, @main=@item_4={0x3, 0x0, 0x9, "acb42657"}, @local=@item_012={0x2, 0x2, 0x8, "83c3"}]}}, &(0x7f0000000ac0)={0x0, 0x21, 0x9, {0x9, 0x21, 0xff7f, 0x5a, 0x1, {0x22, 0x420}}}}, &(0x7f0000000d80)={0x18, &(0x7f0000000b40)={0x0, 0x7, 0x46, "e7a29b51a485230b4ae29b117f71f769332af57076a3a6eb3b1b7ce94973e4f4d752c7c44692fffb67a942bbed1290312cd8cc6e40c6cddaa9976dc69aac90b0ce03478bd7a9"}, &(0x7f0000000bc0)={0x0, 0xa, 0x1, 0x8}, &(0x7f0000000c00)={0x0, 0x8, 0x1, 0x5}, &(0x7f0000000c40)={0x20, 0x1, 0xbb, "3a797f271a660f701f3cbad2b77e590c69d65917e6f9ba83c25873062ab91a6282b9a3b0fa7e03eff3b18e1bc6991b6cd0247be8ba4b63140bba20a508d697fa556bd9bc2a71735c0c42f6c90a54958c0d48852ace782849e528d272957d4c835cd7a875f0723b161e6a53ff2d52c7ca3bf12c0f4e20684dfef2d1195a5731d8dee5304cddfb736520bebdf91aa2f37b38b7140d8fe787421ff58a9ce7bc270f52c22c124d01dd112775ad9cc0b58f65eae4afff979dd8ed192818"}, &(0x7f0000000d40)={0x20, 0x3, 0x1}}) syz_usb_control_io$hid(r0, 0x0, 0x0) syz_usb_connect$cdc_ecm(0x6, 0x0, 0x0, &(0x7f00000014c0)={0xa, &(0x7f0000001100)={0xa, 0x6, 0x300, 0x0, 0x20}, 0x0, 0x0, 0x2, [{0x0, 0x0}, {0x0, 0x0}]}) syz_usb_control_io$printer(0xffffffffffffffff, 0x0, 0x0) r1 = syz_usb_connect(0x0, 0x24, &(0x7f0000000100)=ANY=[@ANYBLOB="12010000ce4e80400120001af18d000000010902120001000000000904"], 0x0) syz_usb_control_io$hid(r1, 0x0, 0x0) syz_usb_control_io(r1, 0x0, 0x0) syz_usb_control_io$hid(r1, 0x0, 0x0) syz_usb_control_io(r1, 0x0, 0x0) syz_usb_control_io(r1, &(0x7f00000003c0)={0x18, &(0x7f0000000240)={0x0, 0x0, 0xb3, {0xb3, 0x9, "8d9bbea61a2afd40bdd7679d91b887a322ff045f5d18e8e9b18b1adaa16a0d865fb55b2b62ee1c7ed2f5066eebf61c601bd361c2cb88c2d45e2c59f6e01b6adf7e3f57f2000697bcdf95c0d6822f3c1dba5fed5152dfa85a03c41d1c12895251e5b6d587775ec877f3caf1702c703dfdff0b309ee4baee2318edec155df543fb83ed4b4bf28d0e7069fb5eb6a46a075e481c4fae2d43a14391ba53ce650e85a697a724d6f5c6e5443630a84891b9cdb9ab"}}, &(0x7f0000000100)={0x0, 0x3, 0x4, @lang_id={0x4, 0x3, 0x418}}, &(0x7f0000000300)={0x0, 0xf, 0x3d, {0x5, 0xf, 0x3d, 0x6, [@ext_cap={0x7, 0x10, 0x2, 0x1c, 0x2, 0xb, 0xf6}, @ss_cap={0xa, 0x10, 0x3, 0x2, 0x1, 0xff, 0x0, 0xffc1}, @ss_cap={0xa, 0x10, 0x3, 0x2, 0x1, 0x0, 0x8, 0x20}, @wireless={0xb, 0x10, 0x1, 0x2, 0xc, 0x6, 0x80, 0x7, 0x5f}, @ext_cap={0x7, 0x10, 0x2, 0x6, 0xf, 0x1, 0x820}, @wireless={0xb, 0x10, 0x1, 0x8, 0xc, 0x2e, 0x64, 0x3, 0x3f}]}}, &(0x7f0000000140)={0x20, 0x29, 0xf, {0xf, 0x29, 0x2f, 0x0, 0x3f, 0x0, "dcc540e1", "a1e7800f"}}, &(0x7f0000000380)={0x20, 0x2a, 0xc, {0xc, 0x2a, 0x7, 0x1, 0x6, 0x3f, 0x1, 0x100, 0xff5d}}}, &(0x7f0000000900)={0x44, &(0x7f0000000480)={0x0, 0x8, 0xbd, "ef507a8880feecd89a4541d688c67a59d71baa864bf6f51b913557cefdcc2c653132225a1eddadbf990dc92fa9f22ec8655edb92861e26b0ce2e3e050f4fdd499ce16157c33351cacc80d517b247b76ca729ce1ac1c6ba4ac477c9e9891239f82d2557a09c96a4f98f57833f5a17a793282881b5666bcaf21862879cc7c55f875551162c3c4dc764841dc81d0fd8835c133b38e4eabd49f2956e813bd985414ab6dc8adc42188849b88672cf9caac4490720ca0e405190a25bb72c1db5"}, &(0x7f0000000400)={0x0, 0xa, 0x1, 0xb7}, &(0x7f0000000580)={0x0, 0x8, 0x1, 0x7f}, &(0x7f00000005c0)={0x20, 0x0, 0x4, {0x0, 0x3}}, &(0x7f0000000600)={0x20, 0x0, 0x4, {0xa0, 0x2}}, &(0x7f0000000640)={0x40, 0x7, 0x2, 0x7}, &(0x7f0000000680)={0x40, 0x9, 0x1, 0x2}, &(0x7f00000006c0)={0x40, 0xb, 0x2, "9c8e"}, &(0x7f0000000700)={0x40, 0xf, 0x2, 0x78be}, &(0x7f0000000740)={0x40, 0x13, 0x6}, &(0x7f0000000780)={0x40, 0x17, 0x6, @dev={'\xaa\xaa\xaa\xaa\xaa', 0x1d}}, &(0x7f00000007c0)={0x40, 0x19, 0x2, "5bb6"}, &(0x7f0000000800)={0x40, 0x1a, 0x2, 0x8}, &(0x7f0000000840)={0x40, 0x1c, 0x1, 0x2}, &(0x7f0000000880)={0x40, 0x1e, 0x1, 0x4}, &(0x7f00000008c0)={0x40, 0x21, 0x1}}) syz_usb_connect$uac1(0x0, 0x0, 0x0, 0x0) syz_usb_connect$printer(0x0, 0x0, 0x0, &(0x7f00000021c0)={0x0, 0x0, 0x0, 0x0, 0x2, [{0x2, &(0x7f0000002080)=@string={0x2}}, {0x0, 0x0}]}) syz_genetlink_get_family_id$netlbl_mgmt(&(0x7f00000025c0), 0xffffffffffffffff) syz_usb_connect$hid(0x0, 0x0, 0x0, 0x0) syz_usb_connect$uac1(0x3, 0x0, 0x0, &(0x7f0000003640)={0x0, 0x0, 0x0, 0x0}) socket$netlink(0x10, 0x3, 0xb) [ 302.092427][T10382] netlink: 388 bytes leftover after parsing attributes in process `syz-executor.1'. [ 302.232296][ T8452] usb 3-1: new high-speed USB device number 10 using dummy_hcd 17:49:30 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3], 0x1a0}}, 0x0) [ 302.476067][ T8452] usb 3-1: Using ep0 maxpacket: 32 [ 302.522637][ T8451] usb 1-1: new high-speed USB device number 20 using dummy_hcd [ 302.570879][T10388] netlink: 388 bytes leftover after parsing attributes in process `syz-executor.1'. [ 302.592936][ T8452] usb 3-1: config 0 interface 0 altsetting 0 endpoint 0x82 has invalid wMaxPacketSize 0 [ 302.603284][ T8452] usb 3-1: config 0 interface 0 altsetting 0 bulk endpoint 0x82 has invalid maxpacket 0 [ 302.613497][ T8452] usb 3-1: New USB device found, idVendor=065a, idProduct=0009, bcdDevice=14.14 [ 302.622914][ T8452] usb 3-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 17:49:30 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB], 0x1a0}}, 0x0) [ 302.755244][ T8452] usb 3-1: config 0 descriptor?? [ 302.797269][ T8452] opticon 3-1:0.0: opticon converter detected [ 302.841310][ T8452] usb 3-1: opticon converter now attached to ttyUSB0 [ 302.923354][ T8451] usb 1-1: New USB device found, idVendor=2001, idProduct=1a00, bcdDevice=8d.f1 [ 302.932831][ T8451] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 303.000864][T10379] udc-core: couldn't find an available UDC or it's busy [ 303.008335][T10379] misc raw-gadget: fail, usb_gadget_probe_driver returned -16 [ 303.013881][ T8451] usb 1-1: config 0 descriptor?? [ 303.060567][T10399] netlink: 388 bytes leftover after parsing attributes in process `syz-executor.1'. 17:49:31 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB], 0x1a0}}, 0x0) [ 303.619802][T10404] netlink: 388 bytes leftover after parsing attributes in process `syz-executor.1'. 17:49:31 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB], 0x1a0}}, 0x0) [ 304.171434][T10408] netlink: 388 bytes leftover after parsing attributes in process `syz-executor.1'. [ 304.372555][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0000: -71 [ 304.382747][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Error reading PHYID register: ffffffb9 17:49:32 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800"], 0x1a0}}, 0x0) [ 304.438212][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 304.448630][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to enable software MII access [ 304.572384][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0000: -71 [ 304.582679][ T8451] ===================================================== [ 304.589623][ T8451] BUG: KMSAN: uninit-value in asix_mdio_write+0x512/0xa80 [ 304.592469][ T8451] CPU: 1 PID: 8451 Comm: kworker/1:3 Not tainted 5.12.0-rc6-syzkaller #0 [ 304.602280][ T8451] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 304.602280][ T8451] Workqueue: usb_hub_wq hub_event [ 304.602280][ T8451] Call Trace: [ 304.602280][ T8451] dump_stack+0x24c/0x2e0 [ 304.602280][ T8451] kmsan_report+0xfb/0x1e0 [ 304.602280][ T8451] __msan_warning+0x5c/0xa0 [ 304.602280][ T8451] asix_mdio_write+0x512/0xa80 [ 304.602280][ T8451] asix_phy_reset+0xd8/0x300 [ 304.602280][ T8451] ax88172_bind+0x83e/0xc80 [ 304.602280][ T8451] ? asix_resume+0x150/0x150 [ 304.602280][ T8451] usbnet_probe+0x113f/0x3e10 [ 304.602280][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 304.602280][ T8451] ? kmsan_internal_set_origin+0x85/0xc0 [ 304.602280][ T8451] ? usbnet_disconnect+0x6b0/0x6b0 [ 304.602280][ T8451] usb_probe_interface+0xfcc/0x1520 [ 304.602280][ T8451] ? usb_register_driver+0x900/0x900 [ 304.602280][ T8451] really_probe+0xe15/0x24d0 [ 304.602280][ T8451] driver_probe_device+0x29d/0x3a0 [ 304.602280][ T8451] __device_attach_driver+0x63f/0x830 [ 304.602280][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 304.602280][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 304.712304][ T8451] __device_attach+0x56a/0x890 [ 304.712304][ T8451] device_initial_probe+0x4a/0x60 [ 304.712304][ T8451] bus_probe_device+0x17e/0x3d0 [ 304.712304][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 304.712304][ T8451] device_add+0x2c15/0x31d0 [ 304.712304][ T8451] usb_set_configuration+0x3872/0x3eb0 [ 304.712304][ T8451] ? usb_set_configuration+0xae1/0x3eb0 [ 304.712304][ T8451] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 304.712304][ T8451] usb_generic_driver_probe+0x138/0x300 [ 304.712304][ T8451] ? usb_choose_configuration+0xee0/0xee0 [ 304.712304][ T8451] usb_probe_device+0x317/0x570 [ 304.712304][ T8451] ? usb_register_device_driver+0x590/0x590 [ 304.712304][ T8451] really_probe+0xe15/0x24d0 [ 304.712304][ T8451] driver_probe_device+0x29d/0x3a0 [ 304.712304][ T8451] __device_attach_driver+0x63f/0x830 [ 304.712304][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 304.712304][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 304.802188][ T8451] __device_attach+0x56a/0x890 [ 304.802188][ T8451] device_initial_probe+0x4a/0x60 [ 304.802188][ T8451] bus_probe_device+0x17e/0x3d0 [ 304.802188][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 304.802188][ T8451] device_add+0x2c15/0x31d0 [ 304.802188][ T8451] usb_new_device+0x1bd4/0x2a30 [ 304.832349][ T8451] hub_event+0x5b99/0x8870 [ 304.832349][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 304.832349][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 304.832349][ T8451] ? led_work+0x780/0x780 [ 304.832349][ T8451] process_one_work+0x1219/0x1fe0 [ 304.832349][ T8451] worker_thread+0x10ec/0x2340 [ 304.832349][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 304.832349][ T8451] kthread+0x521/0x560 [ 304.832349][ T8451] ? process_one_work+0x1fe0/0x1fe0 [ 304.832349][ T8451] ? kthread_blkcg+0x110/0x110 [ 304.832349][ T8451] ret_from_fork+0x1f/0x30 [ 304.832349][ T8451] [ 304.832349][ T8451] Local variable ----smsr@asix_mdio_write created at: [ 304.832349][ T8451] asix_mdio_write+0xce/0xa80 [ 304.832349][ T8451] asix_mdio_write+0xce/0xa80 [ 304.832349][ T8451] ===================================================== [ 304.832349][ T8451] Disabling lock debugging due to kernel taint [ 305.030629][T10412] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. [ 305.059961][ T8452] usb 3-1: USB disconnect, device number 10 17:49:33 executing program 2: openat$autofs(0xffffffffffffff9c, &(0x7f0000003080), 0x20c082, 0x0) clock_gettime(0x0, &(0x7f0000000100)) pselect6(0x40, &(0x7f0000000040), &(0x7f0000000080)={0x1}, &(0x7f00000000c0)={0x4}, &(0x7f0000000140)={0x77359400}, &(0x7f00000001c0)={&(0x7f0000000180)={[0x3]}, 0x8}) clock_gettime(0x0, &(0x7f0000000280)={0x0, 0x0}) clock_nanosleep(0x1, 0x0, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500)) pselect6(0x40, &(0x7f0000000000)={0x3, 0x6, 0x0, 0xb96, 0x3, 0x80000001, 0x4}, &(0x7f0000000200)={0x8, 0x1, 0xeda, 0x401, 0x3ff, 0x3, 0x7fff}, &(0x7f0000000240)={0x3, 0x1000, 0x2, 0x2, 0x3, 0x280, 0x7, 0x9}, &(0x7f00000002c0)={r0, r1+10000000}, &(0x7f0000000340)={&(0x7f0000000300)={[0x9, 0x6]}, 0x8}) r2 = socket(0x1, 0x5, 0x0) shutdown(r2, 0x1) r3 = openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000540)='freezer.self_freezing\x00', 0x0, 0x0) sendto$inet6(r3, 0x0, 0x55, 0x4481, 0x0, 0x0) setsockopt$inet6_MRT6_DEL_MFC(r2, 0x29, 0xcd, &(0x7f0000000380)={{0xa, 0x4e22, 0x81, @private1, 0x100}, {0xa, 0x4e21, 0xffff, @dev={0xfe, 0x80, '\x00', 0xd}, 0xb}, 0x3, [0x9, 0x81, 0x3ff, 0x0, 0x0, 0x100, 0xfffffffe, 0x4]}, 0x5c) recvfrom$inet6(0xffffffffffffffff, &(0x7f0000000400)=""/109, 0x6d, 0x0, &(0x7f0000000480)={0xa, 0x4e24, 0x3, @mcast2, 0x1f}, 0x1c) [ 305.124538][ T8452] opticon ttyUSB0: opticon converter now disconnected from ttyUSB0 [ 305.133859][ T8452] opticon 3-1:0.0: device disconnected 17:49:33 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800"], 0x1a0}}, 0x0) [ 305.526492][T10427] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. 17:49:33 executing program 2: r0 = openat$vicodec0(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) ioctl$VIDIOC_G_CROP(r0, 0xc014563b, &(0x7f0000000080)={0x2, {0x2, 0x4, 0x0, 0x7}}) 17:49:33 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800"], 0x1a0}}, 0x0) [ 306.108259][T10433] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. 17:49:34 executing program 0: openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000000c0)='memory.events\x00', 0x26e1, 0x0) r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='memory.events\x00', 0x7a05, 0x1700) perf_event_open(&(0x7f0000000100)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f00000000c0)={0x11, 0x4, &(0x7f0000000000)=@framed={{}, [@call={0x85, 0x0, 0x0, 0xe}]}, &(0x7f0000000040)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x2, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x78) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000080)={&(0x7f00000001c0)='ext4_journal_start\x00', r1}, 0x10) write$cgroup_subtree(r0, &(0x7f0000000000)=ANY=[], 0x32600) r2 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r2, 0x8933, &(0x7f0000000100)={'wg0\x00'}) r3 = socket(0x10, 0x803, 0x0) r4 = socket$netlink(0x10, 0x3, 0x0) sendmsg$RDMA_NLDEV_CMD_DELLINK(r4, &(0x7f0000000400)={&(0x7f0000000280)={0x10, 0x0, 0x0, 0x1}, 0xc, &(0x7f0000000340)={&(0x7f0000000300)={0x28, 0x1404, 0x20, 0x70bd2a, 0x25dfdbff, "", [@RDMA_NLDEV_ATTR_DEV_INDEX={0x8}, @RDMA_NLDEV_ATTR_DEV_INDEX={0x8, 0x1, 0x2}, @RDMA_NLDEV_ATTR_DEV_INDEX={0x8}]}, 0x28}, 0x1, 0x0, 0x0, 0x400c041}, 0x8000000) r5 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r5, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getpeername$netlink(0xffffffffffffffff, &(0x7f0000000480), &(0x7f00000004c0)=0xc) getsockname$packet(r5, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r4, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r6, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r5, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000780)={&(0x7f0000000380)=ANY=[@ANYBLOB="5800000024001d0f00"/20, @ANYRES32=r6, @ANYBLOB="00000000f1ffffff00000000240008801c0001000000000000000000000051912cf9c4f3e088000000000000040002000e000100626c61636b686f6c65"], 0x58}}, 0x0) getsockname$packet(r5, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route_sched(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000780)={&(0x7f0000000240)=@newqdisc={0x24, 0x11, 0xf1d, 0x0, 0x0, {0x0, 0x0, 0x0, r7}}, 0x24}}, 0x0) bind(r2, &(0x7f0000000200)=@can={0x1d, r7}, 0x80) 17:49:34 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a0000"], 0x1a0}}, 0x0) [ 306.345981][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 306.356396][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to enable software MII access 17:49:34 executing program 2: r0 = syz_init_net_socket$llc(0x1a, 0x0, 0x0) ioctl$F2FS_IOC_MOVE_RANGE(r0, 0xc01cf509, &(0x7f0000000000)={0xffffffffffffffff, 0x1f, 0xb89, 0x5}) bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000240)={0x2, 0x4, &(0x7f00000001c0)=ANY=[@ANYBLOB="180200000000000000000000000000008500000019000000950000000000000009b57d04a439a6702438b43d44c287045686c2b3cd47e0bdc2a7358b6367389eb9c5540d71f3dbc2f9"], &(0x7f00000000c0)='GPL\x00', 0x6, 0x9d, &(0x7f0000000100)=""/157, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x78) [ 306.532994][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0000: -71 [ 306.543276][ T8451] ===================================================== [ 306.550207][ T8451] BUG: KMSAN: uninit-value in asix_mdio_write+0x512/0xa80 [ 306.553077][ T8451] CPU: 1 PID: 8451 Comm: kworker/1:3 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 306.553077][ T8451] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 306.553077][ T8451] Workqueue: usb_hub_wq hub_event [ 306.553077][ T8451] Call Trace: [ 306.553077][ T8451] dump_stack+0x24c/0x2e0 [ 306.553077][ T8451] kmsan_report+0xfb/0x1e0 [ 306.553077][ T8451] __msan_warning+0x5c/0xa0 [ 306.553077][ T8451] asix_mdio_write+0x512/0xa80 [ 306.553077][ T8451] asix_phy_reset+0xd8/0x300 [ 306.553077][ T8451] ax88172_bind+0x83e/0xc80 [ 306.553077][ T8451] ? asix_resume+0x150/0x150 [ 306.553077][ T8451] usbnet_probe+0x113f/0x3e10 [ 306.553077][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 306.553077][ T8451] ? kmsan_internal_set_origin+0x85/0xc0 [ 306.553077][ T8451] ? usbnet_disconnect+0x6b0/0x6b0 [ 306.553077][ T8451] usb_probe_interface+0xfcc/0x1520 [ 306.553077][ T8451] ? usb_register_driver+0x900/0x900 [ 306.553077][ T8451] really_probe+0xe15/0x24d0 [ 306.553077][ T8451] driver_probe_device+0x29d/0x3a0 [ 306.553077][ T8451] __device_attach_driver+0x63f/0x830 [ 306.553077][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 306.553077][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 306.553077][ T8451] __device_attach+0x56a/0x890 [ 306.553077][ T8451] device_initial_probe+0x4a/0x60 [ 306.553077][ T8451] bus_probe_device+0x17e/0x3d0 [ 306.553077][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 306.553077][ T8451] device_add+0x2c15/0x31d0 [ 306.553077][ T8451] usb_set_configuration+0x3872/0x3eb0 [ 306.553077][ T8451] ? usb_set_configuration+0xae1/0x3eb0 [ 306.553077][ T8451] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 306.553077][ T8451] usb_generic_driver_probe+0x138/0x300 [ 306.553077][ T8451] ? usb_choose_configuration+0xee0/0xee0 [ 306.553077][ T8451] usb_probe_device+0x317/0x570 [ 306.553077][ T8451] ? usb_register_device_driver+0x590/0x590 [ 306.553077][ T8451] really_probe+0xe15/0x24d0 [ 306.553077][ T8451] driver_probe_device+0x29d/0x3a0 [ 306.553077][ T8451] __device_attach_driver+0x63f/0x830 [ 306.553077][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 306.553077][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 306.553077][ T8451] __device_attach+0x56a/0x890 [ 306.553077][ T8451] device_initial_probe+0x4a/0x60 [ 306.553077][ T8451] bus_probe_device+0x17e/0x3d0 [ 306.553077][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 306.553077][ T8451] device_add+0x2c15/0x31d0 [ 306.553077][ T8451] usb_new_device+0x1bd4/0x2a30 [ 306.553077][ T8451] hub_event+0x5b99/0x8870 [ 306.553077][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 306.553077][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 306.553077][ T8451] ? led_work+0x780/0x780 [ 306.553077][ T8451] process_one_work+0x1219/0x1fe0 [ 306.553077][ T8451] worker_thread+0x10ec/0x2340 [ 306.553077][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 306.553077][ T8451] kthread+0x521/0x560 17:49:34 executing program 3: r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000880)={'wg1\x00', 0x0}) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$nl80211(&(0x7f0000000600), 0xffffffffffffffff) r5 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r3, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r4, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r5, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r6, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) r7 = socket$nl_generic(0x10, 0x3, 0x10) r8 = socket$nl_generic(0x10, 0x3, 0x10) r9 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r7, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r8, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r9, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r10, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f0923c23c62f53c57cdbf691c0600050000000000240003"], 0x1a0}}, 0x0) [ 306.553077][ T8451] ? process_one_work+0x1fe0/0x1fe0 [ 306.553077][ T8451] ? kthread_blkcg+0x110/0x110 [ 306.553077][ T8451] ret_from_fork+0x1f/0x30 [ 306.553077][ T8451] [ 306.553077][ T8451] Local variable ----smsr@asix_mdio_write created at: [ 306.553077][ T8451] asix_mdio_write+0xce/0xa80 [ 306.553077][ T8451] asix_mdio_write+0xce/0xa80 [ 306.553077][ T8451] ===================================================== sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000010100)={&(0x7f0000000540)={0x10, 0x0, 0x0, 0x80800041}, 0xc, &(0x7f00000100c0)={&(0x7f00000008c0)=@newtaction={0xf7cc, 0x30, 0x8, 0x70bd25, 0x25dfdbfd, {}, [{0x61f8, 0x1, [@m_mirred={0x214, 0x1b, 0x0, 0x0, {{0xb}, {0x124, 0x2, 0x0, 0x1, [@TCA_MIRRED_PARMS={0x20, 0x2, {{0x4, 0x1, 0x7, 0x6, 0x9}, 0x4, r1}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x4, 0x644, 0xffffffffffffffff, 0x0, 0x4}, 0x4, r1}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x1f, 0x1000, 0x1, 0x8, 0x8d9}, 0x3, r1}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x0, 0x10001, 0x6, 0x401, 0x7}, 0x4, r1}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x7, 0x6, 0x20000000, 0x6b4, 0x7}, 0x2}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x7, 0x2, 0x8, 0x2, 0xd1a}, 0x7}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0xb69d, 0x1000, 0x1, 0x8}, 0x2, r1}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x3ff, 0x200, 0x10000000, 0x8, 0xc2e6}, 0x2}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x4, 0x10001, 0x1, 0x3, 0x1}, 0x4, r1}}]}, {0xc8, 0x6, "757ecbd7bc00d6eec1e2f2dbb23d11d6ef6bdcd9d906af91e812d0fe8eae93b2744dbbb81a9aca848c043e9b6d890150400e3eb4c17eb37e3ce00d848065f3c5e282dbc934ac4866322821df938608c00e00f7d5e4705d6b23356f53c2711ac9288342c2e54270f4b61e71b9e0da22623fb8c6127a937588a370659b6a30b2dc1451a785b861698504c24f11567703af7fa6f7e27cfa8d1beff9917afabc5970bfcc1b880d7918b1d5b24b64289d6817bef42274002731668ebdb14cbb262a3a5bd145cd"}, {0xc, 0x7, {0x1}}, {0xc, 0x8, {0x1, 0x4}}}}, @m_bpf={0x110, 0x1b, 0x0, 0x0, {{0x8}, {0x88, 0x2, 0x0, 0x1, [@TCA_ACT_BPF_FD={0x8}, @TCA_ACT_BPF_FD={0x8}, @TCA_ACT_BPF_NAME={0xc, 0x6, './file0\x00'}, @TCA_ACT_BPF_NAME={0xc, 0x6, './file0\x00'}, @TCA_ACT_BPF_OPS={0x34, 0x4, [{0x1, 0x1, 0x37, 0x4}, {0x4, 0x1, 0x6, 0x1}, {0x4, 0x1, 0x40, 0x1}, {0x7f, 0x6b, 0x4, 0x7}, {0x9880, 0x2, 0x0, 0x800}, {0x0, 0x0, 0x0, 0xf7}]}, @TCA_ACT_BPF_NAME={0xc, 0x6, './file0\x00'}, @TCA_ACT_BPF_NAME={0xc, 0x6, './file0\x00'}, @TCA_ACT_BPF_OPS_LEN={0x6, 0x3, 0x5}, @TCA_ACT_BPF_FD={0x8}]}, {0x61, 0x6, "596804b93e837ba45b6325e999db6015e6f31f6b86bffeeddb074484077118e1001bf7fa7ba905e3ec4566719e4c76656ef3d52b1c34448950919730b061874b10c4e3f08c9df5bc00283367ea4685fd16de0528053e17a2f83e647101"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x2, 0x3}}}}, @m_gact={0x98, 0xe, 0x0, 0x0, {{0x9}, {0x28, 0x2, 0x0, 0x1, [@TCA_GACT_PROB={0xc, 0x3, {0x0, 0x235d, 0x2}}, @TCA_GACT_PROB={0xc, 0x3, {0x3, 0xfc0, 0x7}}, @TCA_GACT_PROB={0xc, 0x3, {0x0, 0x943, 0x3}}]}, {0x48, 0x6, "b75bf9684c99059c6465dccc26db45571a3f423a577bc8254d7519f5039f7957ba2c91b221875e711fe8dfbf21871a4b3ee24eaae2c5cc1129c9d4b480a5e3ab83eb7eee"}, {0xc}, {0xc, 0x8, {0x2, 0x3}}}}, @m_vlan={0xc4, 0x1f, 0x0, 0x0, {{0x9}, {0x2c, 0x2, 0x0, 0x1, [@TCA_VLAN_PUSH_VLAN_PRIORITY={0x5, 0x6, 0x4}, @TCA_VLAN_PUSH_VLAN_PRIORITY={0x5, 0x6, 0x5}, @TCA_VLAN_PUSH_VLAN_ID={0x6, 0x3, 0xcd0}, @TCA_VLAN_PUSH_VLAN_PRIORITY={0x5, 0x6, 0x1}, @TCA_VLAN_PUSH_VLAN_PROTOCOL={0x6, 0x4, 0x8100}]}, {0x6d, 0x6, "dac2a9390647f3b59e631ef8164fdec225b987292db879fde7737c193a761a2ee2b094adb646d368a3f2a894e62d2eb2f53977b29bf2c7366c432d3464201b1a072c930435fab7a772d5c6a241d42a4eea152436df0872e988dec51fb664e7c18631fe2cb20f93f21c"}, {0xc, 0x7, {0x1}}, {0xc, 0x8, {0x5, 0x3}}}}, @m_sample={0x16c, 0x19, 0x0, 0x0, {{0xb}, {0x44, 0x2, 0x0, 0x1, [@TCA_SAMPLE_TRUNC_SIZE={0x8, 0x4, 0x6}, @TCA_SAMPLE_RATE={0x8, 0x3, 0x1}, @TCA_SAMPLE_RATE={0x8, 0x3, 0x1deea}, @TCA_SAMPLE_RATE={0x8, 0x3, 0x3}, @TCA_SAMPLE_TRUNC_SIZE={0x8}, @TCA_SAMPLE_PARMS={0x18, 0x2, {0x7b0c34d0, 0x7, 0x10000000, 0x9, 0xfffffff8}}]}, {0xfd, 0x6, "d6c39c9029bc61d3a97988bcd6ab7bbbe870d53e6c0f3cf12bd106cf7fa96239afdefb236034d71b78e4003d5b7f6791297bb072f6d4b06a4df1715ea0dcfdc93ef0d5d562ea52f7c31c688f74aca8450dddec0b8ac1bbad7469c93f425d616deda7b7dc48afebc81a2e96cd5215d585de55781d0441d9af3d703ede9b843cb4c025ec17c5bcf22bcc3f088fd13a02a8423b976e8e2a157fde2bb70522ad1f238bf51c60d5f03ba62ec52fa5da3dfa655a782e698b349ddb746cf6864ae9a128ff829c17dce2a73abbba84b96cc87fbb44eee195e311777c94c5734c412cca392d0ca0ce09cedde3c1929f7d0d879a96f1a582d03061a8dc80"}, {0xc, 0x7, {0x1}}, {0xc, 0x8, {0x2, 0x1}}}}, @m_skbedit={0xc8, 0x1e, 0x0, 0x0, {{0xc}, {0xc, 0x2, 0x0, 0x1, [@TCA_SKBEDIT_PTYPE={0x6, 0x7, 0x1}]}, {0x93, 0x6, "2bb2e9e1b73341221957b324435f67af4b3b69c379986467b9c4feeb8498fc00174e2c727948a455228b0ad5d55efeca8b3fe71ef780cd4e83c5c8f4363fb7f3dd2020d38b52ca0f1c641895abacea21dec2787f426d2dc9dfae7ec5a2f34b309ae5584b0957a8d7cbfdcae20317c465f419db53dcba466c4ee257f3884298859cfa9df5b2fdf8341a1b8ea6b5eb48"}, {0xc, 0x7, {0x1}}, {0xc}}}, @m_pedit={0x2eec, 0x7, 0x0, 0x0, {{0xa}, {0x2e00, 0x2, 0x0, 0x1, [@TCA_PEDIT_KEYS_EX={0x54, 0x5, 0x0, 0x1, [{0x34, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0xcadf531f96c575f5}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}]}, {0x1c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}]}]}, @TCA_PEDIT_PARMS={0xe38, 0x2, {{{0x4, 0x80, 0x1, 0x7ff, 0x800}, 0xff, 0x7f, [{0x101, 0x3, 0x1695, 0x3, 0x4, 0x9}]}, [{0x2, 0xfffffffc, 0x1, 0x3, 0x2, 0x6}, {0x1, 0x80000000, 0x2, 0x7ff, 0x0, 0xeabc}, {0x6, 0x400, 0x1ff, 0x80000001, 0x7fffffff, 0x40b}, {0x0, 0x1000, 0x9, 0xfff, 0xffff, 0xeb}, {0x81, 0xfffffffb, 0x20, 0x80000000, 0xcc7b, 0x5}, {0x4, 0x7, 0x8, 0x4, 0xe6e3, 0x3}, {0x7, 0x5, 0x8001, 0x8, 0x3d3, 0x3}, {0x0, 0x800, 0x7, 0x1, 0x5}, {0x0, 0x9, 0xffffffff, 0x2, 0x3, 0x3}, {0x39797b08, 0x3, 0x17, 0x6, 0x0, 0xc51}, {0x200, 0x1ff, 0x1000, 0x8000, 0x10000, 0x4}, {0x1, 0x6, 0x60000000, 0x101, 0x0, 0x7}, {0x4, 0x1, 0x0, 0x80000000, 0x80, 0x1}, {0xffff, 0x200, 0x828, 0x6, 0x2, 0x80}, {0x1, 0xdc, 0xfffffeff, 0x6a40, 0x2, 0x57beea23}, {0x800, 0x3ff, 0xf50, 0x1ff, 0x8, 0x2}, {0x20, 0x4, 0x80000001, 0x8, 0x800, 0x7fffffff}, {0x4, 0x5, 0xd2d, 0x1, 0x4, 0x8000}, {0x7, 0xfffffff7, 0x5, 0xe567, 0x3, 0x9}, {0x44, 0x523c, 0x3ff, 0x0, 0x1, 0x5}, {0x7, 0xff, 0xf329, 0x7, 0x2, 0x3ff}, {0x4, 0x5, 0x9, 0x7ff, 0x1, 0x3}, {0x7ff, 0x0, 0x98f3, 0x2, 0x2, 0x1ff}, {0xe7c, 0xfffffffc, 0x8000000, 0x6, 0x6, 0xc01}, {0x101, 0xc0000000, 0x5, 0xb72, 0xe90}, {0x97, 0x8, 0x2, 0x7, 0x1, 0x9}, {0x20, 0x9, 0x5ad, 0x3, 0x9, 0x1}, {0x2, 0x1, 0x4, 0x73, 0x5, 0x4}, {0x1, 0x9, 0xda, 0x1, 0x0, 0x6}, {0x0, 0x5e, 0x3, 0x9, 0x7, 0x3}, {0x1, 0x6, 0x5, 0x6, 0x7, 0xffff558f}, {0xfff, 0x1, 0xffff364b, 0x1, 0x2, 0x1}, {0xffffffff, 0x2, 0x6, 0x429d, 0x200, 0x9}, {0x5, 0x8001, 0x4, 0x6, 0x9, 0xcc}, {0x200, 0x9, 0x9, 0xf6bd, 0xe2, 0xba}, {0x1, 0x1, 0x2, 0x6, 0x81}, {0x10001, 0xff, 0x0, 0xfff, 0x7, 0x9}, {0x7, 0xcc96, 0x80000000, 0x101, 0x4, 0xa0000000}, {0x7910, 0xfffffffb, 0x1edd, 0x6, 0x1, 0x9a1e}, {0x28c7, 0x9, 0x7fe0, 0xe8, 0x81, 0x3f}, {0x2, 0x7fff, 0xe900, 0x15, 0xcb, 0x9}, {0x8001, 0x8000, 0x8001, 0x80000000, 0x101, 0x7}, {0x8001, 0x0, 0x2, 0x7, 0x7, 0x1f}, {0x7fff800, 0x0, 0xfc2b, 0x3, 0x1, 0x3}, {0x7, 0x400, 0x7f, 0xfffffff9, 0x80000001, 0x5}, {0x5, 0x4, 0x0, 0x10, 0x9650, 0x3}, {0x9, 0xffffff00, 0x0, 0x3, 0xff, 0x736}, {0x0, 0x8000, 0x6, 0xffff0001, 0xe66, 0x5}, {0x6, 0xffff, 0x7e765fde, 0x2, 0x8001, 0x20}, {0xff, 0x27, 0x4, 0x6, 0x4, 0xff}, {0x5, 0x6, 0x0, 0x5, 0x8, 0xfffffffd}, {0x4a000000, 0x6, 0xffff, 0x9, 0x1f, 0x7}, {0x0, 0x4, 0x100, 0x800, 0x3ff, 0xfffffffd}, {0x0, 0x8, 0x3, 0x5, 0x1ff, 0x2}, {0x3ff, 0xffffffff, 0x3, 0x0, 0x76, 0x80}, {0x6, 0x4, 0x1, 0x7fffffff, 0x3, 0x7}, {0xffff0f64, 0x4, 0x7, 0xa6f, 0x3, 0x1}, {0x7, 0x8, 0x1, 0x6, 0xd737, 0x5}, {0x1f, 0x7, 0x95, 0x80000001, 0x8, 0x3}, {0x80000000, 0x0, 0x8, 0x6, 0xfffffffb, 0x9}, {0x100, 0x6, 0x9, 0x80000001, 0x6, 0x4}, {0x1, 0x0, 0x3, 0x10001, 0x9, 0x800}, {0x4, 0x800, 0x9, 0x1, 0x4}, {0x3, 0xffffffff, 0x4, 0xaa0, 0x10000, 0x2}, {0x200, 0x0, 0x20, 0xdb, 0xe4ab, 0xff}, {0xfffffc01, 0x5, 0xffff0001, 0x6b95, 0x101, 0x3ff}, {0x7d, 0x0, 0x8000, 0x401, 0x200, 0x100}, {0x8, 0x3ff, 0x1, 0x2, 0x8000, 0x1}, {0x5, 0x101, 0x401, 0x20, 0x4369, 0x5}, {0x40, 0x1, 0x2, 0x9, 0xfffffc00, 0xfffff801}, {0x40, 0x200, 0x9, 0x120000, 0x2, 0x6}, {0x0, 0x1f, 0x2, 0x7, 0x1f, 0x3a9}, {0x9, 0xbc5, 0x7fffffff, 0x0, 0x742, 0xfffff000}, {0x2, 0x1f, 0xfff, 0x0, 0xff, 0x1}, {0x8, 0x101, 0x9, 0x4, 0x1, 0x9}, {0x96, 0x8, 0x3, 0x0, 0x6, 0x7}, {0x0, 0x1e, 0x2, 0x3, 0x2, 0xfff}, {0x0, 0x5, 0xfff, 0xb, 0x1d200, 0x8}, {0x0, 0x80000000, 0x4c0f, 0xb911, 0xff, 0x1}, {0x5, 0x3, 0x80000000, 0xba1, 0x4, 0xd2}, {0x5d2, 0x9, 0x5, 0x7fffffff, 0x0, 0x1}, {0x7fffffff, 0x1ff, 0x3f, 0x7, 0x7, 0x2}, {0x101e, 0x6, 0x5, 0x9, 0x7, 0x6ef}, {0x8, 0x1, 0x6a4, 0xffffffff, 0x1, 0x94f}, {0xfffff801, 0x0, 0x4, 0x6, 0x7fff, 0x3}, {0x1, 0x3123, 0xfff, 0xeb1a, 0x2, 0x4}, {0x80000000, 0x1, 0xac, 0x3, 0xfff, 0x4}, {0x6e, 0x6, 0xfffeffff, 0x401, 0x2, 0x2}, {0x0, 0xa54, 0x9, 0x1ff, 0x2, 0xfffffff7}, {0x1ff, 0x6, 0xd02, 0xf9, 0x2, 0x5}, {0x4, 0x8001, 0x8001, 0x8000, 0x7, 0x6}, {0x400, 0xa0cb, 0x8, 0x9, 0xfffffff8, 0x10000}, {0x8, 0x200, 0x10001, 0x2, 0x0, 0x2}, {0x101, 0x2, 0x40, 0x80, 0x7, 0x81}, {0x200, 0x5, 0x20, 0x7, 0x3e50}, {0x6, 0x0, 0x5, 0x1d, 0x2, 0x3}, {0x7, 0x7, 0x200, 0x5fc, 0x2, 0x7}, {0x1e, 0x7f, 0x7f, 0x5, 0x9}, {0xc, 0x4, 0x1, 0x5, 0x7f, 0x4}, {0x20, 0xfffffffc, 0x10, 0xe085, 0x2, 0x8}, {0x7, 0x7, 0x5, 0x20000000, 0x40, 0x1}, {0x8, 0x4, 0x9, 0xb, 0x1000, 0xe57}, {0xffffffff, 0x1, 0x1, 0x0, 0x4, 0x1}, {0x7, 0x1cd0, 0x6, 0xa3, 0x4, 0x10000}, {0x5, 0x19, 0x6, 0xfffffe00, 0x0, 0x65fc}, {0x7, 0x5, 0x3, 0x9, 0x5, 0x40}, {0x6, 0x1000, 0x5, 0x80000001, 0x9, 0xfff}, {0x0, 0x8, 0x4, 0x10001, 0x800, 0x200}, {0x1, 0x7, 0x8001, 0x3f, 0x9, 0x10000}, {0x3, 0x80000001, 0x3, 0x9, 0x8, 0x80}, {0x3e5, 0x0, 0x100, 0x8, 0x3dfb}, {0x8001, 0x9, 0x9, 0x5, 0x9, 0x3a98}, {0xa7a7, 0x80, 0xfffffff9, 0xa5c, 0x8, 0x400}, {0x3, 0x6, 0x80000001, 0x8000, 0x400, 0x9}, {0xe8, 0x1, 0x0, 0x8, 0x200, 0xfffffbff}, {0x7, 0x3, 0x4, 0x1, 0x4, 0x3ff}, {0x3, 0x8, 0xfffffff8, 0x3, 0x6, 0xffff}, {0x9, 0x55b, 0x3f, 0x8, 0x9825, 0xffffffff}, {0x9, 0x90ad, 0x5, 0x6, 0x1000, 0xc425}, {0x8000, 0x8, 0xffffdc68, 0x4, 0x7, 0x1}, {0x92cf, 0xfff, 0x5, 0x5, 0x5818, 0xd26b}, {0x2, 0x4bf, 0x2, 0x9, 0x575, 0x4}, {0x477, 0x5, 0x20, 0xffff, 0x4, 0x20}, {0x5, 0x8, 0x7f, 0xff, 0x9911, 0x3ff}, {0x84, 0x6e, 0x7fff, 0x3f, 0x1, 0x1ff}, {0x2, 0x1, 0x400, 0x30fc2208, 0x9, 0x7}, {0x5, 0x1d8c, 0x2, 0x9, 0x4, 0x7}, {0x800, 0x0, 0xe92f, 0x8, 0x5}], [{0x0, 0x1}, {0x3}, {0x2, 0x1}, {0x1, 0x1}, {0x4}, {0x5}, {0x1, 0x1}, {0x5, 0x1}, {}, {0x4}, {0x2}, {0x2}, {0x4}, {0x0, 0x1}, {0x5, 0x1}, {}, {0x4}, {0x5}, {0x5, 0x1}, {0x3, 0x1}, {0x4}, {0x2, 0x1}, {}, {0x2, 0x1}, {0x1, 0x1}, {0x1}, {0x0, 0x1}, {0x2, 0x1}, {0x4, 0x1}, {0x2}, {0x4}, {0x3, 0x1}, {0x2}, {0x2}, {0x3}, {}, {0x5}, {0x3}, {0x5}, {0x1}, {0x5, 0x1}, {0x3}, {0x1, 0x1}, {0x4}, {0x4, 0x1}, {0x4}, {0x0, 0x1}, {0x3}, {0x0, 0x1}, {0x3, 0x1}, {}, {0x0, 0x1}, {0x1, 0x1}, {0x6}, {0x1}, {0x2}, {0x0, 0x1}, {0x2, 0x1}, {0x3, 0x1}, {0xf31a935150c96d90, 0x1}, {0x2, 0x1}, {0x3}, {0x0, 0x1}, {0x2}, {0x4}, {0x5}, {0x3}, {0x0, 0x1}, {0x1, 0x1}, {0x5, 0x1}, {}, {0x0, 0x1}, {0x2}, {0x5, 0x1}, {}, {0x5}, {0x2}, {0x3, 0x1}, {0x4, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x2}, {0x1, 0x1}, {0xa}, {0x2, 0x1}, {}, {0x3}, {0x1}, {0x4}, {0x5}, {0x1, 0x1}, {0x3, 0x1}, {0x1, 0x1}, {0x5}, {}, {0x6}, {0x5}, {0x4}, {}, {0x2}, {0x4, 0x1}, {0x2, 0x1}, {0x4, 0x1}, {0x4, 0x1}, {0x3}, {0x0, 0x1}, {}, {0x3, 0x1}, {0x1}, {0x3, 0x1}, {0x4, 0x1}, {0x1, 0x1}, {0x3}, {0x2}, {0x5, 0x1}, {0x4}, {0x4}, {0x3}, {0x4, 0x1}, {0x5}, {0x1}, {0x4}, {0x4}, {0x4}, {0x6, 0x1}, {0x5}, {0x2, 0x1}, {0x1, 0x1}]}}, @TCA_PEDIT_KEYS_EX={0xd0, 0x5, 0x0, 0x1, [{0x2c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x5}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}]}, {0x1c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}]}, {0x1c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}]}, {0x2c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x5}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}]}, {0x3c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x3}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}]}]}, @TCA_PEDIT_PARMS_EX={0xee0, 0x4, {{{0x1, 0x8000, 0x3, 0x3, 0x200}, 0x4d, 0x7f, [{0x3f, 0x7, 0x7, 0x3, 0x8000, 0x5}, {0xfff, 0x2, 0x5, 0x2, 0x1, 0xdb}, {0x3, 0x3ff, 0x5, 0x3, 0x5, 0x1}, {0x74d1, 0xf9f, 0x401, 0x9, 0x8001, 0x7fffffff}, {0x1, 0x7, 0x4, 0x839, 0x0, 0x20}, {0x6, 0x1, 0xe24d, 0x696800, 0x4, 0x9}, {0x3, 0x9, 0x8, 0x1ff, 0x6, 0x40}, {0x2, 0x10000, 0x0, 0x4a20, 0x101, 0xc000000}]}, [{0x7, 0x5, 0xbea8, 0xfff, 0x400, 0xfffffbff}, {0x9, 0x7, 0x6, 0x0, 0x1847, 0xffffffff}, {0x6, 0x1, 0x99, 0x4, 0xfffff425, 0x23e28ba1}, {0x10000, 0x2, 0x6, 0x4, 0x8, 0x8}, {0x91e, 0x0, 0x9, 0x87, 0x8001, 0x1}, {0x200, 0x81, 0x5, 0x9, 0x9}, {0xc36f, 0xbbb9, 0x4, 0x1000, 0x9}, {0x7, 0x3f, 0x1, 0x1000, 0x1, 0xfffffff7}, {0x7, 0x2, 0x1000, 0x8, 0x7, 0x7}, {0x8001, 0x7, 0x8, 0x5, 0x10000, 0xff}, {0x3, 0x401, 0x1000, 0x7f, 0x6f, 0xc54c}, {0x7fff, 0xffffffff, 0x800, 0x2, 0x7f, 0x6}, {0x91, 0x8, 0x75231df0, 0x8, 0x10000, 0x3f}, {0x4, 0x7, 0xfff, 0x8001, 0xa2, 0x8}, {0xfff, 0x4, 0x1, 0x7, 0x0, 0xd865}, {0x4, 0x8, 0x1, 0x7fff, 0x0, 0x8}, {0x0, 0xff, 0x8, 0xfffffffa, 0x80000000, 0x3}, {0x3, 0x497, 0x1, 0x6, 0x546, 0x8}, {0x10001, 0xfffffff7, 0x0, 0x7fffffff, 0x4, 0x400}, {0x0, 0x4, 0x0, 0x9, 0x3, 0x6}, {0x1, 0x7, 0x7fc7db3f, 0x200, 0xfffffc00, 0x80000001}, {0x8, 0xfff, 0xfd4, 0x9, 0x6, 0x8}, {0x4, 0x9, 0x10001, 0x7, 0x1f, 0x702b}, {0x1, 0x80, 0xfffffe01, 0x883, 0x800000, 0x101}, {0x7cab, 0x100, 0x7, 0x1c5, 0x7, 0x80000001}, {0x9, 0x20, 0x7fff, 0x7, 0xb3, 0x8}, {0x5, 0x6, 0x0, 0x20, 0x7fff, 0xbf50}, {0x9, 0x7, 0x4, 0x73, 0x9, 0x401}, {0x4, 0x4, 0x8, 0x80000001, 0x80000000, 0x2}, {0x4, 0x8, 0x1, 0xbcb, 0x5, 0xf79}, {0x7ff, 0x100, 0x5, 0x7, 0x40000000, 0x9}, {0x6, 0xdb27, 0xa7f, 0x0, 0x0, 0x8}, {0x8, 0x80000001, 0x6, 0x0, 0xa4c, 0x4566}, {0x5, 0x5, 0x8, 0x1ff, 0x7, 0x2595}, {0x3f, 0x1ff, 0x8, 0x1, 0x20, 0x3}, {0x7, 0x1, 0x9, 0xbd, 0xffffffff}, {0xff, 0x6, 0x7, 0x3f, 0x101, 0x5}, {0x80000001, 0x90, 0x3fff8000, 0xc00000, 0x7fff, 0x2}, {0x20, 0xc1, 0x8, 0x9, 0x3, 0x9}, {0x200, 0x7, 0x0, 0x8001, 0x8, 0x4}, {0x101, 0x4, 0x8020, 0xfffff801, 0x8, 0x95b}, {0x100, 0x9, 0x1f, 0x4, 0x400, 0x8}, {0x1, 0x6, 0xd9f, 0x0, 0x1ff, 0x80000001}, {0x1, 0x8, 0x5, 0x89e6, 0x2, 0x7}, {0x0, 0x2, 0x39, 0x2, 0xf6e2ea5, 0x1000}, {0x7f, 0xdd, 0x9, 0x671e, 0x1, 0x3}, {0x2, 0x7fff, 0x2, 0x3, 0x4}, {0x8, 0x3, 0x4, 0x8, 0x1ff, 0x401}, {0xffffffff, 0x6, 0x4, 0xffff, 0x9, 0x5}, {0x1ff, 0x1, 0xdf, 0x0, 0x4, 0x1}, {0x1, 0x1, 0x401, 0x7fff, 0xdb5c, 0x3}, {0x5, 0x5, 0x148000, 0x8, 0x4, 0x40}, {0x401, 0x20df, 0x1, 0x55b, 0x0, 0x3}, {0xe82, 0x5, 0x7, 0x9, 0x80, 0x4}, {0x400, 0x0, 0x7f, 0x1, 0x2, 0x1}, {0x7, 0x2, 0x9, 0xfffffdfe, 0x5, 0x3}, {0x101, 0x2, 0x800, 0x8, 0x7f, 0x6}, {0x3, 0x10000, 0x9, 0x81, 0x8}, {0x1, 0x1, 0x7ff, 0x10001, 0x2, 0x10001}, {0x2, 0x7f, 0x3583, 0x1000, 0x1f, 0x1}, {0xffffffff, 0x564b, 0xa20, 0x8000, 0x8d0, 0x4}, {0x401, 0x1, 0x3, 0xa4, 0x6dd, 0x80000000}, {0xfffffffa, 0x5, 0x0, 0x200, 0x75812935, 0x20}, {0xd6, 0x400, 0x3, 0x2, 0x3, 0x6}, {0x7, 0x1, 0x7, 0x36e, 0x1, 0x1}, {0x5, 0x6, 0x7f, 0x7fffffff, 0xfff, 0x1}, {0x7fffffff, 0x5, 0x3f, 0x0, 0xf3d8, 0x7}, {0x7, 0x4, 0x80000000, 0x5, 0x3f, 0xff}, {0x8, 0xe9, 0x40, 0x8, 0x3, 0x1}, {0x6c3, 0x80000000, 0x8001, 0x56e2, 0x3, 0x9}, {0x2, 0x401, 0x3f, 0x4, 0x8, 0x3}, {0x1ff, 0x1, 0xf3f2, 0x1}, {0x6, 0x400, 0x1, 0xffffff80, 0xcd, 0x7fff}, {0xff, 0x5, 0x9, 0x7fffffff, 0x7, 0x7fffffff}, {0x10000, 0xc6b, 0x9, 0x1f, 0x1, 0x2}, {0xa18, 0x9, 0x2, 0x8, 0x80000001, 0x5cd}, {0x1b, 0x8, 0xffff, 0x1, 0x2, 0x2e3}, {0x3, 0x9, 0x2, 0xfc6, 0x3}, {0x0, 0x7fffffff, 0x985a91ba, 0x8, 0x9, 0x9}, {0x80000000, 0x7, 0x2, 0x1000, 0x64, 0x8001}, {0x1, 0x5, 0x1000, 0x1ff, 0x8, 0xff}, {0x0, 0x2, 0x0, 0x3, 0x6, 0x9}, {0x9, 0x9, 0x0, 0xffffffff, 0x0, 0x80}, {0x400, 0x3ff, 0x100, 0x3ffc00, 0xfffff801, 0x1000}, {0xc39, 0x5, 0x1, 0x80000001, 0x502, 0x26}, {0x2, 0x6, 0x8000, 0x1000, 0xc34, 0x1}, {0x6, 0x1, 0x2, 0x6, 0x4, 0x7f}, {0x200, 0x7fff, 0x9, 0x7, 0x0, 0x5}, {0x6, 0x14a7, 0x3, 0x2, 0x180000}, {0x8, 0x4, 0x8, 0x7, 0x1e, 0x3}, {0x0, 0x40, 0x10001, 0x94, 0x2, 0xfffeffff}, {0x800, 0x77, 0x80, 0x2, 0x9, 0x6}, {0x5b, 0xf996cc5a, 0xffffffe1, 0x6, 0x9, 0x7f}, {0x2, 0x5, 0xa0, 0x1400000, 0x8, 0xf3b0}, {0x3, 0x9, 0x8, 0x7fff, 0x4b, 0x3}, {0x7ff, 0x5, 0x4, 0x8001, 0x9, 0x24d5}, {0xfffffffe, 0xd882, 0x7, 0x2, 0x1, 0x20200000}, {0xbb36, 0x80, 0x8, 0x8, 0x3, 0x8}, {0x7, 0x3, 0x1, 0xc430, 0x431c408, 0x10001}, {0x5, 0x200, 0x101, 0x0, 0xbd, 0x7000000}, {0xffffffff, 0x0, 0xff, 0x6, 0x8000}, {0x9, 0x6, 0x3, 0x3f, 0x8001, 0x3}, {0x7fff, 0x80000001, 0x1, 0x3, 0x6, 0xfff}, {0x995, 0xfffffff9, 0x7f, 0x20, 0x3}, {0x7848, 0x7, 0x2, 0xffffffff, 0x6, 0x6}, {0x8, 0x9, 0x2, 0x80, 0x37d, 0xc3}, {0x1, 0x1, 0x40, 0x1, 0x276cde6f, 0x9773}, {0x1ff, 0x8, 0x8, 0xfffffffa, 0x1e, 0xad}, {0x5, 0x82, 0x80, 0x401, 0x9, 0x6}, {0x35, 0x3, 0x0, 0x40, 0x1, 0xd8000000}, {0xffffff01, 0x1, 0xff, 0x800, 0x9, 0x6}, {0x5, 0x2, 0x7, 0x7fff, 0x9, 0xd9}, {0x75, 0x6, 0x400, 0x6, 0x20, 0x4}, {0x2, 0x7, 0x4, 0x2, 0x3, 0x400}, {0x101, 0x60000000, 0x0, 0x7fff, 0x7ff, 0x8000}, {0x1f, 0x4, 0x0, 0x8, 0x8}, {0x1, 0x1, 0xfb, 0x8, 0x3, 0x7}, {0x6, 0x7ff, 0x9, 0x923, 0x8, 0x7fffffff}, {0x6, 0x2, 0x5, 0xc61, 0x7f, 0x6}, {0x0, 0xfffffffe, 0x428, 0x5, 0x81, 0x2}, {0x9, 0x81, 0x80000001, 0x7fff, 0x7fffffff, 0x2}, {0x80000000, 0x0, 0x7aa, 0x4, 0x8, 0x80}, {0xc52, 0x1, 0xca, 0xfff, 0x6, 0x80000001}, {0x9, 0x7fffffff, 0x72f, 0x20, 0x7fff, 0x9}, {0x950, 0x81, 0x1ff, 0xb8d, 0x92f, 0x1}, {0x5, 0x2, 0x15d, 0x3, 0x82d, 0xfffffff9}, {0x6, 0x0, 0x1ff, 0x100, 0x4e0b2482, 0x1}, {0x7, 0x6, 0x9a, 0x6, 0x6, 0x3}], [{0x1, 0x1}, {0x5, 0x1}, {0x0, 0x1}, {0x1}, {0x4, 0x1}, {0x1, 0x744101b8ca6fa88}, {0x1, 0x1}, {0x3}, {0x4}, {}, {0x4}, {0x5}, {0x2, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x1, 0x1}, {0x5}, {}, {0x2, 0x1}, {0x0, 0x1}, {}, {0x5, 0x1}, {0x7479067533dffedb, 0x1}, {}, {}, {0x0, 0x1}, {0x1}, {0x4}, {0x3, 0x1}, {0x1}, {0x0, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {}, {}, {0x3, 0x1}, {0x4}, {0x4}, {0x1, 0x1}, {0x5}, {0x4}, {0x1, 0x1}, {0x3}, {0x3, 0x1}, {0x3, 0x1}, {0x4}, {0x4}, {0x3, 0x1}, {0x7, 0x1}, {0x1, 0x1}, {0x0, 0x1}, {0x0, 0x1}, {0x3, 0x1}, {0x6, 0x1}, {0x1}, {0x4, 0x1}, {}, {0x7}, {0x0, 0x1}, {0x1}, {0x5}, {}, {0x3, 0x1}, {0x4}, {0x3, 0x1}, {0x3}, {0x1, 0x1}, {0x2}, {0x6, 0x1}, {0x3, 0x1}, {0x4}, {0x1}, {0x3, 0x1}, {0x5}, {0x2}, {0x3, 0x1}, {0x2, 0x1}, {}, {0x5, 0x1}, {0x3}, {0x4, 0x1}, {0x4, 0x1}, {0x3}, {0x2}, {0x5, 0x1}, {0x3}, {0x1}, {0x1}, {0x4, 0x1}, {0x5}, {0x5, 0x1}, {0x3, 0x3}, {0x0, 0x1}, {0x4, 0x1}, {0x3, 0x1}, {0x3, 0x1}, {0x1, 0x1}, {0x3}, {0x3, 0x1}, {0x4, 0x1}, {0x1}, {0x2, 0x1}, {0x3, 0x1}, {0x5, 0x1}, {0x3}, {0x4}, {0x0, 0x1}, {0x2, 0x1}, {0x0, 0x1}, {0x328416958c42310}, {0x1}, {0x1}, {0x5, 0x1}, {0x0, 0x1}, {0x1, 0x1}, {0x4, 0x1}, {0x1}, {0x3, 0x1}, {0x4}, {0x5, 0x1}, {0x3, 0x1}, {0x4, 0x1}, {}, {0x531332676d197b06}, {0x4}, {0x1, 0x1}, {0x2, 0x1}, {0x5}]}}, @TCA_PEDIT_KEYS_EX={0x178, 0x5, 0x0, 0x1, [{0x1c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}]}, {0x14, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}]}, {0xc, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}]}, {0x2c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x5}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}]}, {0xc, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6}]}, {0x2c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}]}, {0x44, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}]}, {0x54, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}]}, {0x3c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x5}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x5}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x5}]}]}, @TCA_PEDIT_KEYS_EX={0x10, 0x5, 0x0, 0x1, [{0xc, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6}]}]}, @TCA_PEDIT_PARMS_EX={0xe38, 0x4, {{{0x1000, 0x6, 0x20000000, 0x3, 0x4}, 0x2, 0x5, [{0xc0a, 0x1000, 0x2, 0x8, 0x3, 0x7}]}, [{0x7, 0x1000, 0x669a, 0xb94, 0x7ff, 0x7}, {0x7, 0x400, 0x0, 0x80000001, 0x3, 0x2}, {0xfffffff9, 0x2, 0x1, 0x8, 0x0, 0x7}, {0x3, 0x100, 0x2, 0x0, 0x0, 0x3}, {0x8, 0xf2bf, 0xed8, 0xd6, 0x1f, 0x1}, {0x200, 0x4, 0x3, 0x0, 0x5}, {0x10000, 0x5, 0xfffffffa, 0xfffffe4b, 0x9, 0x7}, {0x6, 0x9, 0x7, 0x4, 0x8, 0x5}, {0x2, 0x6b48, 0x7, 0x200, 0x0, 0x10001}, {0x6, 0xfb, 0x9, 0x5, 0x0, 0xff}, {0x4, 0x0, 0x9, 0x5, 0x7fffffff, 0x20}, {0x1, 0xdc0000, 0x4, 0x9, 0x2, 0x7}, {0x6, 0xa6d, 0xa, 0x2, 0x4, 0x6}, {0x4, 0x1ff, 0x0, 0x1000, 0xc0000000, 0x7f}, {0x9, 0x2, 0x27c8, 0x81, 0x9, 0xffffffff}, {0x5, 0x5, 0xfff, 0xc696, 0x3, 0xffff0001}, {0x84e5, 0x5, 0x100, 0x3f, 0x8, 0x10000}, {0x1, 0x3, 0x1, 0x1000, 0x7, 0x3ff}, {0x10001, 0x10bc3506, 0x4, 0x1, 0x1, 0x20}, {0x7f, 0x0, 0x7, 0x80000000, 0xc, 0x200}, {0x0, 0x62a55a81, 0x10001, 0x7, 0x489, 0x19}, {0x0, 0x3, 0xdaf1, 0xf3, 0x7, 0x3}, {0x673000, 0x0, 0x94, 0x80000000, 0x7, 0xffffffff}, {0x4, 0x1, 0x1000, 0x0, 0x40, 0x6}, {0x100, 0x4, 0x80, 0x20, 0x400, 0xffff}, {0x7, 0x9, 0x2, 0x80000001, 0x8161, 0x7}, {0xfffffffe, 0x0, 0x7, 0x8000, 0x6, 0x1000}, {0x1, 0x0, 0x3, 0xfffff000, 0xffffffe0, 0x6}, {0x1000, 0x6, 0xfffffff8, 0x3, 0x3, 0x7}, {0x3, 0x7, 0xfffffff8, 0x3ff, 0x0, 0x7}, {0xffff0001, 0x9, 0xff, 0x80000000, 0x9, 0xffffff22}, {0x1, 0x9, 0x8, 0x101, 0x0, 0x2}, {0x7, 0x3e, 0x81, 0x1, 0x8, 0x7}, {0x38, 0x8e58, 0x80000000, 0x401, 0x3, 0x40}, {0x5, 0x15, 0x6, 0x0, 0x3ff, 0x20}, {0x10000, 0x80000000, 0xfe000000, 0x2, 0x8001, 0x4}, {0x3, 0xc1c, 0x1, 0x2, 0x2ad08bb3, 0x6c97}, {0x7, 0xffffffff, 0x3, 0x6, 0x4, 0x1}, {0x981, 0x400, 0x8, 0xed9, 0xa259, 0x7}, {0x3f, 0x400, 0x6, 0x5a, 0x8001, 0x1f}, {0x7, 0x4, 0x0, 0x0, 0x20, 0x7}, {0xfff, 0xffff, 0x3, 0x6, 0x0, 0xfffffffc}, {0x8, 0xffff, 0x5, 0x1, 0xaac4, 0x400}, {0x1000, 0xfc, 0x2, 0x1, 0x8, 0xfff}, {0x0, 0x6, 0x6, 0x20, 0x3, 0xc5a8}, {0x5, 0x4, 0x7, 0x80000000, 0x9, 0x7}, {0x6, 0x5, 0x6, 0x9, 0x2c648, 0x101}, {0x47e, 0xf7, 0x7, 0x4000, 0x8, 0x7f}, {0x2, 0x67b0, 0x3ff, 0x8, 0x9, 0x7}, {0xd10, 0x80000000, 0x5f, 0x1f, 0xffffff30, 0x9}, {0x5, 0x0, 0x4, 0x1f, 0xffff, 0x5}, {0x9, 0x0, 0x6, 0x5, 0xca3, 0x3}, {0x7, 0x1, 0x400, 0xffff, 0x2, 0xffffa293}, {0x8, 0x7f, 0x0, 0x2, 0x9, 0x1000}, {0x6, 0x4000000, 0xbd5, 0x3, 0x0, 0x3}, {0x400, 0x5, 0x4, 0x3, 0x729, 0x800}, {0x2, 0x1ff, 0x10001, 0x3, 0x3, 0x3ff}, {0x9, 0x100, 0x6e, 0x4, 0x81, 0x4}, {0x1, 0x1, 0x0, 0x8, 0x3}, {0x3, 0xfffffbff, 0x7fc7, 0x9, 0x40, 0x1}, {0x20, 0x7c, 0x401, 0x1, 0xd3e, 0x6}, {0x8, 0x9, 0x9, 0x6, 0x80, 0x1ff}, {0xe68, 0x0, 0x40, 0x48a, 0x2, 0x5286}, {0x4, 0x8, 0x8, 0x4f, 0x9, 0x8}, {0x6c81, 0x4, 0x40, 0x7a, 0x5, 0x7fffffff}, {0x2, 0xfff, 0x80000001, 0x7f, 0x2, 0x7ff}, {0x3, 0x4, 0x448b, 0x7, 0x10001, 0x8}, {0xfffffff9, 0xfffffffa, 0x3, 0x7ae, 0x0, 0x7fffffff}, {0x800, 0x3, 0x9, 0x5, 0xffff, 0x1f}, {0xb2, 0x3f, 0x8, 0x3, 0x1, 0x2}, {0x80000000, 0x1, 0x1000, 0x10000, 0x4, 0xb5}, {0xfff, 0x0, 0x81, 0x4, 0x40, 0x6}, {0x20, 0x1000, 0x100, 0x8, 0x0, 0x1ff}, {0x40, 0x2, 0x4, 0xff, 0x4, 0x1000}, {0x9, 0x3f, 0x3fda, 0x10001, 0x1, 0x5}, {0x2, 0x9, 0x845, 0x9, 0x8, 0x1}, {0x1, 0xfffffffd, 0x1, 0x800, 0x4, 0xb680}, {0x7, 0xffff1812, 0x0, 0x7ff, 0x3, 0x14b}, {0x9, 0x1, 0x9c2, 0xfffffff8, 0x5, 0x6}, {0x8, 0x6, 0xa5, 0x6, 0xffffffff, 0x6}, {0x4, 0x200, 0x10000, 0x7, 0x400, 0x3ff}, {0x1, 0x0, 0x80000000, 0x0, 0x9, 0x1}, {0xec, 0x310, 0xdc, 0xe568, 0x4, 0x81}, {0x0, 0x4, 0x7f, 0x1, 0x5, 0x4}, {0x7f, 0x7, 0x9, 0x7, 0xaea1, 0x6}, {0x7, 0x4, 0x8, 0x883e, 0x0, 0x1}, {0xfffffff7, 0x4, 0xfaf, 0x1f, 0xfffff30a, 0x9}, {0x0, 0x9, 0x6, 0x4, 0x0, 0x2}, {0x8, 0x60c, 0x8, 0x4, 0x400, 0xfffffff9}, {0x5, 0x6, 0x80, 0x5cbd85cf, 0x444}, {0x3e, 0x8, 0x89, 0x0, 0x2, 0x9}, {0x8, 0x2, 0xfff, 0x4, 0xdc4, 0x4}, {0x0, 0x3, 0x1f, 0x1f, 0xa2e, 0x7}, {0x80000000, 0x0, 0x7f, 0xc7, 0xfff, 0x4}, {0x4, 0x6, 0x7, 0x1ff, 0x7f, 0x2ab}, {0x2, 0x8, 0x4, 0x400, 0xf9c1, 0x1}, {0x5, 0x7, 0x4, 0x8, 0x8, 0x6}, {0x26cf, 0x6, 0x3, 0x7fff, 0x546d, 0x1f}, {0x9, 0x9, 0x5, 0x1800, 0x3, 0xfc}, {0x28, 0x8, 0xffff, 0x5, 0x1f, 0xe}, {0x4, 0xffffffa3, 0x5, 0x9, 0x20, 0x20000}, {0x200, 0x4, 0x126b, 0x717d, 0x401, 0x6}, {0x9, 0x2, 0xa, 0x100, 0x22, 0xfffffffe}, {0x9, 0x216, 0x0, 0x9, 0x10000, 0x3}, {0xc18, 0x9, 0x1000, 0x1, 0x9, 0x81}, {0x1, 0x101, 0x4, 0x1, 0x40000000, 0x754}, {0x1, 0x0, 0x1, 0x3, 0x400, 0xc87b}, {0x8, 0xc00, 0x80000001, 0x2, 0x101, 0x5}, {0x4, 0x4, 0x5, 0x65b62c2e, 0x9, 0x8}, {0x0, 0x1b, 0x4, 0x20, 0x1, 0x7fffffff}, {0x1, 0x401, 0x3, 0x100, 0x4, 0x4}, {0xecf, 0x5, 0x81, 0x2, 0x1, 0x1ff}, {0xca5, 0x6, 0x4, 0x2, 0x3, 0x81}, {0x4, 0x7ff, 0x4, 0x7fff, 0x3, 0x2}, {0xaf9b, 0x8, 0x401, 0x401, 0xe2, 0x46}, {0x401, 0x101, 0x1, 0x1, 0x28000000, 0x1c000}, {0x3, 0x5, 0x200, 0x6, 0x3f, 0xf81}, {0x1, 0x6, 0x5, 0x5, 0x1c3, 0x3}, {0xffffffff, 0x0, 0x4df, 0x639e, 0x7ff, 0x1000}, {0x80000000, 0xffff0001, 0xfff, 0x200, 0x0, 0x24c}, {0x4b1, 0x80000000, 0x40, 0xffff34eb, 0xd561, 0x2}, {0x3, 0x3, 0x200, 0x2, 0xfff, 0x3}, {0xaaa, 0xffffff3f, 0x81, 0x7, 0x2, 0x2a35}, {0x7, 0xab375dbf, 0x9, 0x5000, 0x6d31, 0x400}, {0x5, 0xfe0000, 0x8, 0x80000000, 0x3}, {0x8f7, 0x0, 0x7, 0x4b38, 0x1, 0x8}, {0xfffffe00, 0x5, 0xffffffe1, 0xd25, 0xda, 0x37}, {0x4b2, 0x87, 0x5, 0x6, 0xff, 0x5bfaaac8}], [{0x3, 0x1}, {0x3, 0x1}, {0x3}, {0x2}, {0x2}, {0x1, 0x1}, {0x2}, {0x4, 0x1}, {0x4}, {}, {}, {0x3}, {0x3}, {0x2, 0x1}, {0x3}, {0x3, 0x1}, {0x3, 0x1}, {}, {0x6}, {0x2, 0x1}, {0x1}, {0x1}, {}, {0x4, 0x1}, {0x0, 0x1}, {0x3, 0x1}, {0x1, 0x1}, {0x4}, {0x1}, {0x3}, {0x1, 0x1}, {0x0, 0x1}, {0x3}, {0x0, 0x1}, {0x7, 0x1}, {0x0, 0x1}, {0x1}, {0x2}, {}, {0x5, 0x1}, {}, {0x2, 0x1}, {0x3, 0x1}, {0x3, 0x1}, {0x3}, {0x0, 0x1}, {0x5}, {0x1}, {0x0, 0x1}, {}, {0x4, 0x1}, {0x3}, {0x5, 0x1}, {0x0, 0x1}, {0x4}, {0x2}, {}, {0x4, 0x1}, {0x5, 0x1}, {0x1}, {0x3}, {0x3, 0x1}, {0x4}, {0x2, 0x1}, {0x3, 0x1}, {0x2}, {0x0, 0x1}, {0x1, 0x1}, {0x5}, {0x0, 0x1}, {0x4}, {0x5}, {0x1}, {}, {0x1, 0x1}, {0x5, 0x1}, {0x4, 0x1}, {0x1, 0x1}, {}, {0x2, 0x1}, {}, {0x5, 0x1}, {0x2, 0x1}, {0x1, 0x1}, {0x3}, {0x5, 0x1}, {0x1, 0x1}, {0x3, 0x1}, {0x0, 0x1}, {0x4}, {}, {0xadbb98ceab7ab184, 0x1}, {0x0, 0x1}, {0x1}, {0x0, 0x1}, {0x1, 0x1}, {0x5}, {0x4}, {0x5}, {0x3}, {}, {0x2}, {0x4}, {0x0, 0x1}, {0x5}, {0x0, 0x1}, {0x1, 0x1}, {0x5}, {}, {0x4}, {0x3, 0x1}, {0x4, 0x1}, {0x1}, {0x4}, {0x4}, {0x4}, {0x4}, {0x3}, {0x5}, {0x5}, {0x4, 0x1}, {0x4}, {}, {0x3, 0x1}, {0x4}, {0x1}, {0x2, 0x1}, {0x0, 0x1}]}}]}, {0xc4, 0x6, "b3de073e29cdd21c9719b559cfafea892f8294fc5289f7d1e1e433b6276427a03a95dbe85ac24d6d2eaaf12639971d8ba03c0fabecd7f04c1437a63ed4713aa40a734b83e5ac14ae05ad053d2e8a63a7f4976125de4c20e2cccefc3c8e39940a18ee8da365d6e444315ae7b7dfe1afa07014e0940f4f2ca520dbbc9c0ee74a8c214ee89c3e85a6c5d646c4788c05664603438714605c535b46f62a310a1bbd23213291d425804204fcd16c59087fdb63f581d202cea6b140d036601d14b4accb"}, {0xc, 0x7, {0x0, 0x1}}, {0xc, 0x8, {0x2}}}}, @m_pedit={0x2c54, 0xe, 0x0, 0x0, {{0xa}, {0x2bfc, 0x2, 0x0, 0x1, [@TCA_PEDIT_PARMS_EX={0xe98, 0x4, {{{0xffffffff, 0x8, 0x0, 0xfffffff8, 0x7fff}, 0xff, 0x2, [{0x9, 0xa1, 0x3, 0x81, 0x2, 0x4}, {0xfff, 0xdd, 0x9, 0x7f, 0x718, 0xb528}, {0x0, 0x9, 0x200, 0x200, 0x8}, {0x1000, 0xd9f, 0x7, 0xc952, 0x756, 0x6}, {0x6, 0x7, 0x6, 0x9, 0x2, 0x7}]}, [{0x8, 0x1000, 0x40, 0x6, 0x1, 0x8}, {0x8a, 0x3, 0xe9f, 0x5, 0x9, 0x400}, {0x0, 0xb335, 0x1, 0x6, 0xfffffff9, 0x3}, {0xffffd926, 0x20, 0x8, 0x6, 0x80, 0x20}, {0x3, 0x2, 0x8000, 0x2, 0x20, 0xffffffc1}, {0x5, 0x101, 0x8, 0x6, 0x7f, 0x78febf2d}, {0x9, 0x1, 0x6, 0x5, 0xf703, 0x6}, {0x1, 0x4, 0xffffffff, 0x150, 0x8, 0x40}, {0x2, 0x80000001, 0x100, 0x8, 0x6}, {0x8, 0x1, 0x20, 0x1f, 0x1, 0x1}, {0xfffffffc, 0x101, 0x8, 0x1, 0xffffff7f, 0x8}, {0x7, 0x7, 0xb7d, 0xfffffff9, 0x6520, 0x8}, {0x0, 0x7, 0xffff, 0x8001, 0x401, 0x20}, {0xffffffff, 0x2, 0x1000, 0x1, 0x1f, 0x4}, {0x9, 0x8, 0x9, 0xb6e2, 0x5, 0x9}, {0x100, 0xfffffffd, 0x800, 0x3, 0x5, 0x4800}, {0x0, 0x100, 0x0, 0x7a, 0x2}, {0xcf7, 0x40, 0x80000001, 0x4, 0x7, 0x5}, {0xffff, 0xc959, 0x400, 0xffff, 0x3, 0x7}, {0x7fff, 0x1f, 0x2, 0x8001, 0xfffffff9, 0xdf}, {0x5, 0x5, 0x3, 0xc1, 0x7, 0x8}, {0xffff, 0xc, 0x3, 0x8000, 0x6, 0x4}, {0xa54, 0x9, 0x4, 0x9, 0x2}, {0xb127, 0x0, 0x1, 0x8000, 0x4, 0x200}, {0x9, 0x1000, 0x8001, 0x7fff, 0x0, 0xa358}, {0x1, 0x8, 0x0, 0x9, 0x9}, {0x1f, 0xaa5, 0x0, 0x600, 0x7, 0x1f}, {0xfff, 0x8, 0xffffff9e, 0x0, 0xfffffff8, 0x4}, {0xfff, 0x8, 0x800, 0x6, 0x3, 0x9}, {0x9, 0x7ff, 0x1, 0x5, 0x5, 0x8}, {0x200, 0x5, 0x8, 0x4, 0x683, 0x3}, {0xbd96, 0x8, 0x6, 0x1, 0x9, 0xffff}, {0x7, 0x80000001, 0xff, 0x10000, 0x94e4, 0x896}, {0x0, 0xffffffff, 0x9, 0x80000001, 0x2, 0x797}, {0x0, 0x0, 0x3, 0x6, 0x9, 0xe6}, {0x1, 0x7, 0x40, 0x0, 0xb8000000}, {0x20, 0x0, 0xfff, 0x2, 0xc6, 0x4}, {0x401, 0x0, 0x3, 0x3, 0xff, 0x4}, {0x3, 0xfffffff7, 0x80000000, 0x401, 0xdc, 0x80}, {0x4, 0x2, 0x3, 0x8, 0x91a, 0x1}, {0x3, 0x7f, 0x9d, 0x7, 0xe0000000, 0x10001}, {0xfffffff8, 0x80000001, 0xff, 0x0, 0x401, 0x280000}, {0xfffffff7, 0x6, 0x10001, 0x1, 0xfffffffe, 0x6}, {0x1, 0x0, 0x9, 0x5, 0x7, 0x6}, {0xfff, 0x1, 0x3, 0x1000, 0x0, 0x3}, {0x5, 0x8, 0xfff, 0x4, 0xffffff00, 0x5}, {0xff, 0x98, 0x8, 0x5, 0x9, 0x7}, {0x2, 0x400, 0x1, 0x5, 0xfd51, 0x80000000}, {0xa2, 0x4, 0x8, 0x3f, 0x419e, 0xf80}, {0x3, 0x0, 0x1ff, 0x6, 0x1, 0x9}, {0x0, 0xfffffffc, 0x401, 0x5, 0x8, 0x9}, {0x0, 0xf83, 0x5, 0x5, 0x101, 0x8000}, {0x634, 0xd1, 0x7, 0x0, 0x3, 0x1}, {0x1, 0x6, 0x1, 0x0, 0xff, 0x81}, {0x296, 0xb78, 0x7fffffff, 0x2, 0x800, 0x167}, {0x3, 0x2, 0x0, 0xfffffffe, 0x5, 0x5}, {0x3, 0x401, 0x3ff, 0x8000, 0x2, 0x1}, {0x0, 0x10001, 0x5, 0x4, 0x1ff, 0x2}, {0x1, 0x1000, 0x3, 0x3dd, 0xfff, 0xff}, {0x7, 0x2, 0x7, 0x4, 0x3ff, 0x6}, {0x7, 0x8001, 0x7, 0x4, 0x200, 0x6}, {0x8, 0x8, 0x4, 0xffff2805, 0xee26, 0x8000}, {0x6, 0x5d, 0x8, 0xd75, 0x20, 0x6}, {0x2, 0x60, 0x101, 0x9, 0x81, 0x1f}, {0x7, 0x8, 0x800, 0x8, 0x3, 0x9}, {0x6, 0x2, 0x0, 0x7fff, 0x5, 0x80000001}, {0x6, 0x5, 0x0, 0xffffffff, 0x1f1f, 0x3ff}, {0x4, 0xffff, 0x8000, 0x1, 0x7, 0x6}, {0x1, 0x8, 0x3e5, 0x9, 0x9, 0x3f}, {0x3, 0x8, 0xfff, 0x3c5e, 0x400, 0x3}, {0xffffff00, 0xfffffff7, 0x0, 0x81, 0x0, 0x80000000}, {0x9, 0x7, 0x1, 0x101, 0x2, 0x3f}, {0x8a, 0x101, 0x1000, 0x9, 0x18, 0x3}, {0x4, 0x4, 0x4, 0x0, 0x2, 0x401}, {0x0, 0x0, 0x1, 0x8, 0x5bb, 0x3}, {0x3, 0xa4, 0x5, 0x8, 0x7fffffff, 0x100}, {0x3ff, 0x3f000000, 0x5, 0x1, 0x9, 0x2000}, {0x716d, 0x4, 0x3, 0x80000001, 0x4, 0x8}, {0x6, 0x7fff, 0x1f, 0x80000000, 0x101, 0x10000}, {0x7fff, 0x6, 0x1, 0x1, 0x800, 0x7fffffff}, {0x9, 0x124, 0xd634, 0x1, 0x5, 0x80000001}, {0x2, 0x3, 0x8a5, 0xffffffff, 0x5, 0x8}, {0x1ff, 0x7, 0x5, 0x0, 0x7, 0x7}, {0x5, 0x1, 0xfffffffe, 0x3, 0x7, 0x401}, {0x7, 0x2, 0x5, 0x7f, 0xfffffffc, 0x6}, {0x81, 0xb04, 0x0, 0x8b, 0x6658, 0x80000001}, {0x0, 0xef, 0xa6ab, 0x1, 0xff, 0x3}, {0x8, 0x9, 0x5, 0x1f, 0x5c26fe80, 0x5}, {0x9, 0x8, 0x9, 0x0, 0x0, 0x1}, {0x400, 0x7, 0x1, 0x401, 0x9, 0xf2c}, {0x8, 0x2, 0x4, 0x2, 0xfffffffc, 0x5}, {0x7fff, 0x7f4c, 0x1, 0x1ff, 0x4, 0xa096}, {0x7f, 0x6, 0xfffffff7, 0x20, 0x7, 0x6}, {0x6, 0x10000, 0x3f, 0x80, 0x200, 0x3}, {0xe00000, 0xffff, 0x48, 0x5, 0x10001, 0x59}, {0x5, 0x1, 0x3f, 0x3, 0x3, 0x1}, {0x3, 0x3f, 0x7, 0x4, 0x2, 0x80000001}, {0x4, 0x0, 0x6, 0x4e7, 0x7, 0x10000}, {0x90e7, 0x1, 0x0, 0xfffffffd, 0x7, 0x3}, {0x2, 0x7, 0x4, 0x3, 0x8, 0x3}, {0xfffffffb, 0x2, 0x1e, 0x50, 0x1ff, 0x75dfd37e}, {0x3, 0x8, 0x1f, 0x9aad, 0x2, 0xffff03dd}, {0x200, 0x0, 0x2, 0x9, 0x5, 0x200}, {0xac5, 0x6b, 0x20, 0x7, 0x9, 0x80}, {0x8, 0x7ff, 0x3, 0x7, 0xffff3201}, {0x2, 0x5, 0x7f, 0x2, 0x5, 0xdb}, {0x1000, 0x5, 0x81, 0x20, 0x3, 0x2}, {0x2, 0x192195f9, 0x100, 0x7f, 0x4, 0x4}, {0x7, 0x3, 0x5d, 0x5, 0x5, 0x6902dae4}, {0x6, 0x9be1, 0x8, 0x3, 0x7, 0x401}, {0x1, 0x3f, 0x7, 0x1, 0x1, 0x6}, {0xfffffe01, 0x5, 0x3f, 0x5, 0x0, 0x6}, {0x9619, 0xff, 0x2, 0x5, 0x0, 0x36b}, {0x0, 0xffffff4a, 0x401, 0x100, 0x3ff, 0x5a8}, {0xfff, 0x9, 0x3, 0x0, 0x1, 0x4f}, {0x1, 0x10000, 0x4, 0x2, 0x7, 0x101}, {0x1, 0x0, 0xd21, 0x2, 0x100, 0x2}, {0x3ff, 0x8000, 0x7c3, 0x8, 0x41db7e5a, 0x3}, {0x0, 0x10001, 0x74a, 0x4, 0x8, 0x1f}, {0x8, 0x24a, 0x7e7, 0x7, 0x34, 0x400}, {0x74dc, 0x5, 0x40, 0x400, 0xc00000, 0x4}, {0xe0e1, 0x0, 0x5, 0xffff, 0x9, 0x1}, {0x0, 0x0, 0x20, 0x1a1f, 0xe56b, 0x10001}, {0x6, 0x40, 0x9, 0x0, 0x8001, 0x4}, {0x8, 0x3, 0x594, 0x2, 0x3, 0x5}, {0x752, 0x3, 0x3, 0x0, 0x0, 0x67}, {0x5, 0x3, 0xffffcee7, 0x0, 0x3, 0x6}, {0xa8e, 0x3ff, 0x7, 0xff, 0x7f, 0x5}], [{0x2, 0x1}, {}, {}, {0x5}, {0x3, 0x1}, {0x3, 0x1}, {0x1}, {0x5}, {0x5, 0x1}, {0x0, 0x1}, {0x0, 0x1}, {0x2, 0x1}, {}, {0x2, 0x1}, {0x2}, {0x3, 0x1}, {0x3}, {0x4}, {0x1, 0x1}, {0x3}, {0x2, 0x1}, {0x2, 0x1}, {0x1, 0x1}, {0x1}, {0x1}, {0x5}, {0x3, 0x1}, {0x4, 0x1}, {0x5}, {0x4, 0x1}, {0x3, 0x1}, {0x1}, {0x3}, {0x5, 0x1}, {}, {0x5}, {0x2}, {0x0, 0x1}, {0x0, 0x1}, {0x3, 0x1}, {0x3}, {0x4, 0x1}, {0x0, 0x1}, {0x1}, {}, {0x1, 0x1}, {0x6}, {0x3, 0x1}, {0x5}, {0x1}, {0x4, 0x2}, {0x1, 0x1}, {0x5}, {0x0, 0x1}, {0x1}, {0x2, 0x1}, {}, {}, {0x5, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x3, 0x1}, {}, {0x5}, {0x0, 0x1}, {0x7}, {0x4, 0x1}, {0x1, 0x1}, {0x1, 0x1}, {0x1, 0x1}, {0x5, 0x1}, {0x4, 0x1}, {0x2, 0x1}, {0x2, 0x1}, {0x0, 0x1}, {0x2}, {0x5, 0x1}, {0x3}, {0x5, 0x1}, {0x4}, {0x3, 0x1}, {0x0, 0x1}, {0x3}, {0x3, 0x1}, {}, {0x4}, {0x4, 0x1}, {0x2}, {0x3, 0x1}, {0x2, 0x1}, {0x5, 0x1}, {0x5}, {0x4}, {0x1, 0x1}, {0x4}, {0x1, 0x1}, {0x0, 0x1}, {0xf80abc535f760e44}, {0x0, 0x1}, {0x2}, {0x4}, {0x3, 0x1}, {0x3, 0x1}, {0x2}, {0x3}, {0x0, 0x1}, {0x2}, {0x5}, {0x4, 0x1}, {0x1}, {0x4, 0x1}, {0x5, 0x1}, {0x5}, {0x3}, {}, {0x4}, {}, {0x0, 0x1}, {0x0, 0x1}, {0x3, 0x1}, {0x5}, {}, {0x1}, {0x1}, {0x0, 0x1}, {0x4, 0x1}, {0x2, 0x1}, {0x0, 0x1}], 0x1}}, @TCA_PEDIT_PARMS={0xe68, 0x2, {{{0x244, 0x3, 0x2, 0x1, 0x8}, 0x9, 0x4, [{0x5, 0x80000000, 0x8, 0x5, 0x101, 0x9}, {0x2, 0x2, 0x2, 0x80000000, 0xffffffff, 0xecd2}, {0x8cd, 0x9, 0x4, 0x3, 0x80, 0x5}]}, [{0x9, 0x4, 0x1, 0x200, 0x4, 0x3ff}, {0x80000001, 0x7, 0x2, 0x0, 0x40, 0x101}, {0x9, 0x3, 0xe72, 0x3, 0x3}, {0x4, 0x2061, 0x4, 0x3, 0x2, 0x5e7}, {0x1f, 0x3, 0x3, 0x2, 0x0, 0x8}, {0x0, 0x3, 0xfa86, 0x9, 0x4, 0x3}, {0x6, 0x4, 0xfffffffa, 0x400, 0x1, 0xd8}, {0x8, 0xdae, 0x6f64, 0x2, 0xd5dd, 0x1}, {0x800, 0x0, 0xffffffff, 0x7, 0x87a, 0xe8}, {0x1, 0x200, 0x10000, 0x8, 0x9, 0x80}, {0x4, 0x4, 0x1f, 0x80, 0x5, 0x4}, {0xd764, 0x10000, 0x9, 0xfffffffb, 0x1, 0xffffff20}, {0x101, 0x7f, 0x8, 0x4, 0x80, 0x1}, {0x8, 0x1ff, 0x7, 0xd30, 0x3, 0x6f4fc1da}, {0x1f, 0xad1, 0x9, 0x2, 0x2, 0x2}, {0xfffffff8, 0x1, 0x80000001, 0x8e2b, 0x21e2, 0xff}, {0x9, 0x9, 0x3, 0x7fffffff, 0x0, 0xeef}, {0x0, 0x8, 0x7fffffff, 0x8, 0x80, 0x200000}, {0xffff, 0xcc6f, 0x5, 0x0, 0x8000, 0x78}, {0x0, 0xff, 0x5, 0xfffeffff, 0x3ff, 0x7}, {0x7b54, 0x8001, 0x392, 0x2, 0x6, 0x9}, {0x7fffffff, 0xffff, 0x4, 0xaab, 0xd9, 0x6}, {0x2, 0x4, 0x9, 0x82, 0xa1d1}, {0x2b, 0x4, 0x8, 0x5, 0xffffffe0, 0x2}, {0x2036, 0xe31, 0x8, 0x100, 0x2, 0x2}, {0xf55c, 0x6, 0x1c, 0xf7, 0xffff, 0x80}, {0xffff, 0x4, 0x4, 0x6ac, 0xfffff169, 0xb56}, {0x2, 0x8, 0x4, 0x0, 0x49f, 0x101000}, {0x7, 0xdef, 0xfffffff8, 0x7, 0x6, 0x800}, {0xc66e, 0xb2b, 0x6, 0xffffff7f, 0x3, 0x4}, {0x3a, 0x1f, 0x1, 0xf2, 0x9660, 0x177}, {0x5, 0x5, 0x4, 0x1, 0x5, 0x200}, {0x4, 0x4, 0x42, 0x5, 0xef, 0x2}, {0x3, 0x3ff, 0x3dd, 0x4, 0x8, 0x3}, {0x6, 0x401, 0x7fffffff, 0x0, 0x0, 0x9735}, {0x8001, 0x8001, 0xfffffe00, 0x9, 0x800}, {0x2, 0x6ce, 0x6, 0x81, 0x7fffffff, 0x1}, {0x4, 0xfffff8b6, 0x3f, 0x48988aee, 0x1, 0x5}, {0x4, 0xd46, 0x40000000, 0x40, 0x7ff, 0x7}, {0x54, 0x3ff, 0x4, 0x2, 0x1, 0x7}, {0x9, 0xfffffffe, 0x1000, 0x2, 0x6275, 0x7ff}, {0x3b4c, 0x7, 0x20, 0xd6, 0x6, 0x5}, {0x8, 0xc4ec, 0xf0000000, 0x6c2, 0x5, 0x3}, {0x7, 0x1, 0x93ee, 0x8001, 0x1ff, 0x1}, {0x728, 0x5, 0x40, 0x40, 0x8, 0x5}, {0x0, 0x4, 0x3f, 0x0, 0x8f, 0x81}, {0xd8, 0x4, 0xfffff007, 0x0, 0x1ff, 0xfffffe00}, {0x8, 0xe69, 0x0, 0x80000000, 0x2, 0x4}, {0x1ae6, 0x1ff, 0x4, 0x7, 0x7f, 0x9}, {0x9, 0x18, 0x9, 0x3f, 0x8, 0x8}, {0x2, 0x84, 0x8, 0x40000, 0x1ff, 0x2}, {0x7b80, 0x2, 0x9, 0x40, 0xc6, 0x5}, {0xfffffffe, 0x81, 0x6, 0x400, 0x1, 0x2d6}, {0x1, 0x7fffffff, 0xff, 0x7ff, 0xe46, 0xfffffff9}, {0xffff, 0xc2, 0x1, 0xfffff800, 0x6, 0x1ff}, {0x3, 0x0, 0x3, 0x3, 0x99, 0x6}, {0xffffffff, 0x1, 0x4, 0x6, 0x0, 0x745}, {0x2, 0x84, 0x7, 0xff, 0xa1e, 0x5}, {0x1f, 0x8, 0xffffffff, 0x3, 0x0, 0x1000}, {0x3, 0xef8, 0x5, 0xfa, 0x0, 0x6}, {0xe305, 0x1, 0x200, 0x400, 0x2, 0xa}, {0x0, 0x7, 0x1800, 0x2, 0x6, 0x1}, {0x3, 0x5, 0x3f, 0x0, 0x80000001, 0x5}, {0x4, 0x0, 0x3ff, 0x2, 0x80000001, 0xde}, {0x0, 0x400, 0x8, 0x80, 0x9, 0x400}, {0x8, 0x0, 0x8, 0x9, 0x400, 0xffffffff}, {0x7fffffff, 0x81, 0x10001, 0x100, 0x0, 0x5}, {0x1, 0xffffffff, 0x5d2, 0xecb, 0xf, 0xffff8232}, {0x2, 0x800, 0x5, 0x80000001, 0x101, 0x8001}, {0x101, 0x2, 0x2f, 0x6, 0x7, 0x9f5}, {0x9, 0x81, 0x3, 0x3f, 0x9, 0x3f}, {0x0, 0x3, 0xa585, 0x8, 0xffff7fff}, {0x8, 0xe284, 0x7, 0x80000001, 0x4, 0x9f}, {0x7, 0x7, 0x0, 0x8, 0xdfd}, {0x7, 0x5, 0x100, 0xca04, 0x1f, 0x28f}, {0x7fff, 0x4, 0x0, 0x4, 0x1, 0x1}, {0x400, 0x7, 0xd10, 0x9, 0x4, 0x6}, {0x8001, 0x3, 0x50, 0x0, 0xd5, 0x2}, {0x7fff, 0x8, 0x1f1de5df, 0x1a3, 0x3, 0xfffffff7}, {0xfffffff7, 0xad8, 0xdb, 0x3ff, 0x8b6, 0x6}, {0x1000, 0x7, 0xffff8000, 0xfff, 0x8}, {0x1, 0x1, 0x4, 0xffffffff, 0x3ff, 0x3}, {0x80000000, 0x8, 0x4, 0x3, 0xfaac}, {0x0, 0x7fffffff, 0x900000, 0x800, 0x6, 0x8b3}, {0x3ee9, 0x1000, 0x7, 0x80, 0x3ddb, 0x7}, {0x5, 0x5, 0x5, 0x1, 0x2, 0xa017454e}, {0x2, 0x71, 0x8, 0x5, 0x4, 0x4}, {0xff, 0x2, 0xfffffff9, 0x1, 0x20, 0x4}, {0x5, 0x80000001, 0x2, 0x2, 0x7, 0x40}, {0x8bd6, 0x3, 0xe34, 0x26d, 0x10000, 0x2040000}, {0x2, 0x7, 0x3ff, 0xfff, 0x7fffffff, 0x1f}, {0x7, 0xffffffff, 0x6, 0x5, 0xe88}, {0x1, 0xffffffff, 0x1ed, 0xc5, 0x3, 0x2}, {0x2, 0xe58, 0x6, 0x769d, 0x7, 0xfffffffc}, {0x4, 0x40, 0xe184, 0x8000, 0x5, 0x6}, {0xd5, 0x9, 0x3, 0x9e, 0x5, 0x5}, {0x1, 0x1ff, 0x0, 0x1000, 0x5, 0x4}, {0x7, 0x8, 0x6, 0x4, 0x1, 0x2}, {0x9, 0x6, 0x9, 0x7fff, 0xbdd2, 0x81}, {0x1, 0x3, 0x3, 0x4, 0x4f0f, 0x8f9b}, {0xfffffff9, 0x31b, 0x2, 0x100, 0x5, 0x8}, {0x0, 0xfffffffe, 0x1ff, 0x8, 0x6, 0x5446de43}, {0x1f92, 0x6eb, 0x1ba, 0x7, 0x7, 0x8}, {0x6, 0x5, 0x6, 0x1, 0x7fffffff, 0x8}, {0x8001, 0x7fffffff, 0x1, 0xc0a, 0x19765629, 0x2}, {0x3, 0x2, 0xfffffffc, 0x9, 0x400}, {0x2, 0x6e2, 0x0, 0x1, 0x1, 0x40}, {0x200, 0x2, 0x400, 0x40000000, 0x3f, 0x3f}, {0x2, 0x1f, 0xdb, 0x5, 0x247ea27b, 0x1}, {0xff, 0x1e3, 0x0, 0x2, 0xbe, 0x6}, {0x10000, 0xf52, 0x9, 0x1000, 0x7f, 0x3}, {0x9, 0x4, 0xfde2, 0x3, 0x800, 0xf63b}, {0x8001, 0x3, 0xff, 0x3ff, 0x0, 0xfff}, {0x80000000, 0x1, 0x8, 0x20c, 0x7, 0x1}, {0x20, 0x3f, 0x8, 0x1000, 0x7da, 0x3}, {0x7, 0x3f, 0x1, 0x2e34a2ce, 0x3f, 0x14b2}, {0x5, 0x80, 0x7fff, 0xa5ea, 0x9, 0x8000}, {0x7, 0x4, 0x5, 0x7, 0x6, 0x958}, {0x3, 0x8, 0xc804, 0x8b7, 0x1, 0x1}, {0x5, 0x10000, 0x5, 0x5, 0x0, 0x7ff}, {0x7, 0x7fff, 0x5, 0x7fff, 0x5, 0x9}, {0x0, 0x101, 0x8, 0x400, 0x40}, {0x80000001, 0x3, 0x5, 0x1ff, 0x57, 0x20}, {0x4, 0x7fff, 0x3f, 0x2, 0x0, 0xffff8001}, {0x7, 0x64d6, 0x6, 0xffff25d5, 0x4, 0x410}, {0x8, 0x401, 0x1, 0x9, 0x7ff, 0x1f}, {0x923, 0xfffffff9, 0x0, 0x1000, 0xfff, 0x3}, {0xff, 0x0, 0x100, 0xfff, 0x6, 0x20}], [{}, {0x5}, {0x3, 0x1}, {0x3}, {0x0, 0x1}, {0x2, 0x1}, {0x1}, {0x4}, {0x5}, {0x0, 0x1}, {0x3}, {0x5, 0x1}, {0x5, 0x1}, {0x4}, {0x3}, {0x3, 0x1}, {0x5}, {0x2, 0x1}, {0x3}, {0x5}, {0x4, 0x1}, {0x2}, {0x3}, {}, {0x7}, {0x5}, {0xe, 0x1}, {0x1}, {0x1}, {0x2}, {}, {0x0, 0x2487426404e083df}, {}, {0x3, 0x1}, {}, {0x3}, {0x4, 0x1}, {0x3}, {0x5, 0x1}, {0x4, 0x1}, {0x3}, {0x1}, {0x4, 0x1}, {0x5}, {0x5}, {0x5, 0x1}, {0x1}, {}, {0x2, 0x1}, {0x3}, {0x2, 0x1d2618616a181638}, {0x5}, {0x5, 0x1}, {0x1, 0x1}, {0x3}, {0x3}, {0x1, 0x1}, {0x0, 0x1}, {0x4, 0x1}, {0x1}, {0x3, 0x1}, {0x1}, {0x0, 0x1}, {0x5, 0x1}, {0x1}, {0x2}, {0x1, 0x1}, {0x1, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {}, {0x3}, {0x5}, {0x5, 0x1}, {0x3, 0x1}, {0x1}, {0x6, 0x1}, {0x3, 0x1}, {}, {0x2}, {0x2}, {0x2}, {0x4, 0x1}, {0x0, 0x1}, {0x5, 0x1}, {0x2, 0x1}, {0x1}, {0x1}, {0x4}, {0x1, 0x1}, {0x2}, {0x1, 0x1}, {0x1, 0x1}, {0x4, 0x1}, {0x2}, {0x1}, {0x4, 0x1}, {}, {0x1, 0x1}, {0x3, 0x1}, {0x3}, {0x0, 0x1}, {0x3}, {0x1, 0x1}, {0x2}, {0x2}, {0x2, 0x1}, {0x2, 0x1}, {0x4, 0x1}, {0x3, 0x1}, {0x0, 0x1}, {0x4}, {0x1, 0x1}, {0x0, 0x1}, {0x2}, {0x4, 0x1}, {0x1, 0x1}, {0x1, 0x1}, {0x2}, {0x4, 0x1}, {}, {0x2, 0x1}, {0x4}, {}, {0x1, 0x1}, {0x5}, {0x3, 0x1}, {0x1, 0x1}], 0x1}}, @TCA_PEDIT_PARMS={0xef8, 0x2, {{{0x80000001, 0x401, 0x20000000, 0x8000, 0xfffffe01}, 0x9, 0x3, [{0xffffffff, 0x1, 0x5, 0x9, 0x16c2d687, 0x7}, {0x3, 0xd493, 0x4def, 0x100, 0xf1, 0x57}, {0x2, 0x2, 0x8000, 0x7f, 0x8001, 0xfff}, {0xde, 0x4, 0x80000001, 0x9, 0x0, 0xffffffff}, {0x401, 0x2b, 0x80000000, 0x7fff, 0x6d2c, 0xffffffc0}, {0x0, 0xc4, 0x81, 0x800, 0x3, 0x4}, {0x401, 0x7ff, 0xffffffc5, 0x5, 0x2, 0xe9e}, {0x8a1, 0x0, 0x2, 0x79d, 0x3ff}, {0x1f, 0x200, 0x3ce1, 0x9ca3, 0x8, 0x12f}]}, [{0x8000, 0x7f, 0x9d03, 0x0, 0x0, 0x200}, {0x7f, 0x9, 0xffffff7a, 0xffff3416, 0x5, 0x6}, {0x1, 0x3f, 0x10000, 0xc5, 0x0, 0x9}, {0x80000001, 0x3, 0x3, 0x400, 0x7, 0x7fffffff}, {0x100000, 0x3f, 0xff, 0x400, 0x8, 0x81}, {0x8, 0x4, 0xfffffffa, 0x200, 0x7, 0x5}, {0x3, 0x6, 0x3f, 0x10001, 0x1, 0xfffffff7}, {0x0, 0xd405, 0x4, 0x1c00, 0x0, 0x80000001}, {0x7fff, 0x0, 0x8, 0x7, 0x4, 0x7}, {0x17, 0x7f, 0x3, 0x2, 0x8, 0x2}, {0x460, 0x1000, 0x5, 0x8, 0x2, 0xff}, {0x2, 0x9, 0x0, 0x3, 0x401, 0x1f}, {0xfffffffc, 0x1, 0x6, 0x1000, 0x9, 0xbb}, {0x10001, 0x0, 0x3, 0x2d6, 0x147, 0x8}, {0x0, 0x401, 0x8000, 0x98b7, 0x1, 0x742}, {0x2, 0x2, 0x6924, 0xef8b, 0x4, 0x7}, {0x1ff, 0x9, 0x3, 0x7d16, 0x3, 0x9}, {0xeaa, 0x2, 0x1, 0x8, 0x3, 0x1f}, {0x9, 0xe4e5, 0x0, 0x7fff, 0xe3, 0x1}, {0x2, 0x7ff, 0x5365, 0x7ff, 0x6, 0x6ab}, {0x4, 0xca, 0x1, 0x2, 0x1f, 0x5}, {0x3f, 0x4, 0x23d7, 0x1ff, 0x1ff, 0x8}, {0x5, 0xb082, 0x0, 0x0, 0xfffffff7, 0x4}, {0x8001, 0x9, 0xf892, 0xc35, 0x27cf3908, 0x625b}, {0x401, 0x0, 0x6, 0xca, 0x9, 0x8262}, {0x1, 0x73, 0x3, 0x6, 0x0, 0x200}, {0x6, 0x5, 0x9bf, 0x8, 0x62c}, {0x5, 0x6d, 0x1, 0x470326d4, 0x0, 0x8}, {0x20, 0x101, 0x0, 0x1f6000, 0x400, 0x3}, {0x3, 0x800, 0xfffffff8, 0x0, 0xfe3c, 0xff}, {0x1, 0x31b, 0x7, 0x400, 0x2, 0x1}, {0x8, 0xfffffff7, 0x1, 0x2, 0x7fff, 0x1000}, {0x7, 0xff, 0xfffffff9, 0x8, 0x7ff, 0x7}, {0x0, 0x200, 0x0, 0x7fffffff, 0x3, 0x3}, {0x3f, 0x9, 0x1, 0x7fff, 0x63314704, 0xffffffff}, {0x0, 0x5, 0x4, 0x8000, 0x573e, 0xc1e4}, {0xfffff800, 0x5, 0x8, 0x1000, 0x2, 0x1000000}, {0x4, 0x3, 0x33, 0x6, 0xfcb, 0x7}, {0x401, 0x5, 0x8000, 0xfff, 0x7, 0x8}, {0x1, 0x7f, 0x5, 0x6, 0x81, 0x4}, {0x3, 0x3867400, 0x0, 0x7fffffff, 0xffffffff, 0x6}, {0x3ff, 0x9, 0x4, 0x8, 0x1000, 0xffffffff}, {0x5ab6, 0xc3, 0x9, 0x7fffffff, 0x1, 0x2}, {0x8001, 0xffff0001, 0x8, 0x1, 0x3, 0xfffffffa}, {0x3, 0x1000, 0x10000, 0x1, 0x2}, {0x1ff, 0x3, 0x80000000, 0x8, 0x7, 0x401}, {0x200, 0x8, 0x2, 0xc75, 0x69, 0x2}, {0x6, 0x1f, 0x2, 0x18e4, 0x0, 0x2f99}, {0x4, 0xff, 0x45, 0x81, 0x20, 0x80000000}, {0x1, 0x626, 0xa48, 0x2a, 0xfff, 0xc00}, {0x7ff, 0x5, 0x7, 0x7, 0x2, 0xffffffb0}, {0x7, 0xdcf, 0x8, 0xfffff801, 0x9, 0x8001}, {0x6, 0x2d2, 0x8, 0x10001, 0xfffffffd, 0x9}, {0xfffffffa, 0x419, 0x7ff, 0xd9d5, 0xffff29f2, 0x7}, {0x1, 0x7, 0x358, 0x4, 0xe4c, 0x1}, {0x1f, 0x1f, 0x100, 0x7, 0x9}, {0xad40, 0x6, 0xda, 0x401, 0x3, 0x4}, {0x0, 0x7fff, 0x1, 0x9, 0x1ff, 0x7}, {0x4, 0x9, 0x9, 0x3, 0x3, 0x4}, {0xffffffc1, 0x7900, 0x6, 0x99e, 0xf4, 0x900}, {0x3, 0x0, 0x1, 0x9, 0x20, 0xfffffffb}, {0xfa5, 0x1ee, 0x6, 0x37ce, 0x3f, 0xed1c}, {0x81, 0x2, 0xfffffffb, 0x3, 0xffffffa6, 0x5}, {0x80000001, 0x5, 0xffffffff, 0x8, 0x3ff, 0x9}, {0x3, 0xffff, 0x71dd, 0x3ff, 0x44}, {0x2, 0xac92, 0x7fffffff, 0xffffff49, 0x1}, {0x8, 0xfff, 0x5, 0x7fffffff, 0x2ad, 0xfffffff7}, {0xff, 0x2108, 0x8, 0xb8a, 0x9, 0x8}, {0x8, 0x80000001, 0x6, 0x8, 0x4, 0x9}, {0x7, 0x300000, 0x3, 0x9, 0x2, 0xe58}, {0x1, 0x1, 0xa093, 0xcdd0, 0x13e, 0xfffffffa}, {0x7, 0x2, 0x9, 0x5c9, 0x8, 0x1f}, {0x4, 0x6, 0x7, 0x1, 0x8, 0x9}, {0x10000, 0x81, 0x8000, 0x1f, 0xae3, 0x79e}, {0x6, 0x0, 0x7fffffff, 0x0, 0x101, 0x7fffffff}, {0x5, 0xff, 0x200, 0x3, 0x6, 0x9}, {0x9, 0x2, 0x0, 0x5, 0x4, 0x1f}, {0x20, 0x0, 0x8, 0x79, 0x2, 0x2eaf48ad}, {0x4, 0x9, 0xfff, 0x877, 0x4, 0x6}, {0x1, 0x0, 0x1, 0x5, 0x3, 0x10001}, {0x6, 0x100, 0xffffffff, 0x10000, 0x5, 0x1cc}, {0x4, 0x3, 0x1, 0x2, 0x10001, 0x7ff}, {0xf, 0x1, 0x9, 0x3, 0x0, 0x800}, {0x8, 0x8, 0x7fffffff, 0x6, 0xf3c0, 0x5}, {0x8, 0x10001, 0x7, 0x5, 0x5, 0x1}, {0xfffffc27, 0x9, 0x2, 0x0, 0xffffffff, 0x4}, {0x9, 0x2, 0x10000, 0x7, 0x81, 0xa0000000}, {0x5, 0x32a0000, 0x8001, 0x401, 0x9, 0x7fff}, {0x20, 0xfffffffd, 0xffffffff, 0x80000000, 0x8, 0x81}, {0x80, 0x3ff, 0x10001, 0x7, 0x1, 0x10000}, {0x5, 0xfffffffc, 0x800, 0x8, 0x800, 0x4}, {0x7ff, 0x2, 0x3ff, 0x2c0, 0x800, 0x81}, {0x6, 0x3ff, 0x0, 0x0, 0x800}, {0x5, 0x80ed, 0x1000, 0xb85c, 0x1, 0x68}, {0x8, 0x7, 0x3, 0x40, 0x40, 0x5338}, {0x3, 0x1, 0x101, 0xa, 0x8, 0x8000}, {0x0, 0x8, 0xf86, 0x552, 0x4, 0x6}, {0x8, 0x5, 0x8, 0x13, 0xcfa, 0x546a}, {0x401, 0x9, 0x80000001, 0xe6a7, 0x3f, 0x439}, {0x3706, 0x8, 0x5c5b76c4, 0x81, 0x10000, 0x4}, {0x4, 0x80, 0x71d, 0x3, 0x8, 0x1d0}, {0x8, 0xdf19, 0x5, 0x0, 0x1000}, {0x5, 0x0, 0x200, 0x20, 0x7, 0x81}, {0x4, 0x5, 0x401, 0x80000001}, {0x1, 0x9, 0xa8, 0x2, 0x5294, 0x4}, {0x1, 0x2, 0x6, 0xa3, 0x3, 0x1}, {0x6, 0x1, 0xffffffff, 0x3, 0x9, 0x1df}, {0x200, 0x8, 0x5, 0x401, 0x2, 0x29}, {0x5, 0x6, 0x7, 0xfffeffff, 0x100, 0x100}, {0x9, 0x1f, 0x4, 0x231, 0x1f, 0xbfc2}, {0x450, 0x37, 0x1, 0x2, 0x40, 0x4}, {0x3f, 0x1ff, 0x8, 0x4, 0xf8a, 0x5}, {0x1, 0x71, 0x9, 0x5, 0xff, 0x5}, {0x2, 0x59f, 0x6, 0x7, 0x8, 0x2}, {0x7, 0x3, 0x7, 0x8ea3, 0x1000, 0xffff}, {0x8, 0x8, 0xfff, 0x493, 0x0, 0x40}, {0xe90, 0x9, 0x303, 0x52, 0x3, 0x80}, {0x4cf9, 0x80000000, 0x1, 0x4, 0x0, 0x8}, {0x7, 0x8, 0x0, 0x0, 0x3, 0xffff7fff}, {0x4a, 0x100, 0x2ba1, 0xffff7fff, 0x10a, 0x5}, {0xfff, 0x7fff, 0x80, 0x0, 0x1, 0x1}, {0xfff, 0x0, 0x200, 0x1, 0xefb, 0x3}, {0x40, 0x7, 0x400, 0xffffffff, 0x3, 0x7fffffff}, {0xfffeffff, 0x7ff, 0x3, 0x0, 0xaf15, 0x2}, {0x10001, 0x200, 0x100, 0x4, 0xfffffff8, 0x8}, {0x0, 0x5, 0x1ff, 0x0, 0xfffffff7, 0x3f}, {0x2, 0x7, 0x7, 0x7, 0x4, 0x7}, {0x6, 0x1, 0x7, 0x2, 0x1, 0x100}], [{0x2, 0x1}, {0x5, 0x1}, {0x6, 0x1}, {}, {0x0, 0x1}, {0x5}, {0x2, 0x1}, {0x4, 0x1}, {0x3}, {0x3, 0x1}, {0x1, 0x1}, {0x4}, {0x4}, {0x1, 0x1}, {0x0, 0x2}, {0x4}, {0x5}, {0x1, 0x1}, {0x1}, {0x1, 0x1}, {0x4, 0x1}, {}, {0x5, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x3, 0x1}, {0x2, 0x1}, {0x3, 0x1}, {0x4}, {0x5}, {0x3}, {0x3}, {0x2, 0x1}, {0x5}, {0x2, 0x1}, {0x1, 0x1}, {0x2}, {0x0, 0x1}, {0x5, 0x1}, {0x0, 0x1}, {0x3}, {0x5}, {0x2, 0x1}, {0x5}, {0x2, 0x1}, {0x5, 0x1}, {0x5, 0x1}, {0x1}, {0x5}, {0x2}, {0x2}, {0x2, 0x1}, {}, {}, {}, {0x3}, {0x0, 0x1}, {0x2, 0x1}, {0x0, 0x3}, {0x4, 0x1}, {0x3}, {0x4}, {0x5}, {0x1, 0xe4dced5f9d0d04ed}, {0x1, 0x1}, {0x4}, {0x3}, {0x1, 0x1}, {0x3}, {0x3}, {0x5, 0x1}, {}, {0x1, 0x1}, {}, {0x2}, {}, {0x4, 0x1}, {0x4, 0x1}, {0x3}, {0x3}, {0x2}, {0x5, 0x1}, {0x1, 0x1}, {0x1}, {0x5}, {0x2, 0x1}, {}, {0x0, 0x1}, {0x4, 0x1}, {0x0, 0x1}, {0x4, 0x1}, {0x6}, {0x2, 0x1}, {0x3}, {}, {0x5, 0x1}, {0x3, 0x1}, {0x4}, {0x2}, {0x2}, {0x3}, {0x1, 0x1}, {0x0, 0x1}, {0x4, 0x1}, {0x1}, {0x4, 0x1}, {0x4, 0x1}, {0x4}, {0x0, 0x1}, {0x5}, {0x0, 0x1}, {0x5, 0x1}, {0x5, 0x1}, {0x5, 0x1}, {0x4, 0x1}, {0x0, 0x1}, {0x5}, {0x5, 0x1}, {0x5, 0x1}, {0x4, 0x1}, {0x4}, {0x2, 0x3c15bfd2821854ca}, {0x2, 0x1}, {0x2, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x3}, {0x3}], 0x1}}]}, {0x2d, 0x6, "8482667005e3777ac9909ec16b4d8e6265c1b4fa60083b559416f5bf1d80593954622dc17d99777711"}, {0xc, 0x7, {0x1}}, {0xc, 0x8, {0x0, 0x2}}}}]}, {0x74c4, 0x1, [@m_mirred={0x124, 0xa, 0x0, 0x0, {{0xb}, {0xe4, 0x2, 0x0, 0x1, [@TCA_MIRRED_PARMS={0x20, 0x2, {{0x2, 0x9, 0x3, 0x7, 0x1}, 0x1, r2}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x1, 0x0, 0xffffffffffffffff, 0x7b, 0x4}, 0x3, r1}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0xfffffffd, 0xc0a, 0x7, 0x6, 0x2}, 0x4, r1}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x200, 0x6, 0x1, 0x53cf, 0xce3}, 0x3, r6}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x9, 0x1, 0x7, 0x100, 0x20000}, 0x3, r10}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0xce, 0x9b, 0x8, 0x28, 0x2}, 0x3, r1}}, @TCA_MIRRED_PARMS={0x20, 0x2, {{0x4, 0x7fff, 0x2, 0x4, 0x3f}, 0x2, r1}}]}, {0x17, 0x6, "44b5fe91c300113c7ffd25ecb5f8f7e6278da0"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x3, 0x3}}}}, @m_mpls={0xc8, 0x3, 0x0, 0x0, {{0x9}, {0xc, 0x2, 0x0, 0x1, [@TCA_MPLS_LABEL={0x8, 0x5, 0xaa258}]}, {0x92, 0x6, "7d19f0f28b95a3de883331b235448d859b6d564ddce180a4ca83efab0ebafd955d98c3e48eb10c48eae7fb38a07f84cf5c200264c4d64f9e8fc0354e9059489e4b4de3dcbdfbfc5911dd17c483a891d7ff9eec1d0feca51d67fd6fd83ba8932f270eb645c69a758c1af7a906bdc0fb72bd2fd54f4cd9c0dc79a5acb5e7d3686d50f22a1d5b4115d9e071a24a59e5"}, {0xc}, {0xc, 0x8, {0x1, 0x3}}}}, @m_pedit={0x5a54, 0x17, 0x0, 0x0, {{0xa}, {0x59e4, 0x2, 0x0, 0x1, [@TCA_PEDIT_PARMS={0xee0, 0x2, {{{0x5485, 0x9, 0x4, 0x80000000, 0x200}, 0x0, 0x1, [{0x61, 0x2, 0x0, 0x3, 0x11, 0x1000}, {0x2, 0x7d52, 0x484, 0x1, 0x76279d48, 0x400}, {0x1, 0x10000000, 0x0, 0x7579, 0xfffff800, 0xffff}, {0x80, 0x80000000, 0x9, 0x4, 0x9, 0x2}, {0x1f, 0x3, 0x2, 0x9, 0x81, 0x5}, {0x8, 0x1, 0x4, 0xbd, 0x9, 0x62c7}, {0x7, 0x401, 0xffff, 0x3ff, 0x8, 0x2}, {0x6745, 0x9, 0x0, 0x0, 0x9, 0x4}]}, [{0x7fffffff, 0x7, 0x7f, 0x8000, 0x80000000, 0x100}, {0xffff, 0x7f, 0x6, 0x1f, 0x0, 0x80}, {0x7, 0x5c6, 0x9, 0x6, 0x5, 0x401}, {0xffff6b9e, 0x7, 0x26c7, 0x4, 0x8, 0x7}, {0x0, 0x7ff, 0x0, 0x4, 0x9}, {0x9, 0x7ff, 0x4, 0x7af0, 0x5, 0x7}, {0x5, 0x6, 0x2, 0x64, 0x0, 0xffffffe1}, {0x401, 0x0, 0x6, 0x95, 0x500, 0x1}, {0xa07f, 0x7824886b, 0x8, 0xbb, 0x3, 0x20}, {0x7, 0xbb6, 0x200, 0x3, 0x8e, 0x9}, {0x310, 0x800, 0x80, 0xb1ba, 0x7, 0x7f}, {0xfff, 0x0, 0x10000, 0x8001, 0x7, 0x80000001}, {0x1, 0x4, 0x7, 0xfffff42b, 0x2, 0x4}, {0x3, 0xfffffe01, 0x1, 0x80000001, 0x2, 0x2}, {0xa9, 0x7, 0x5, 0x9, 0x4, 0x8}, {0x6, 0xee2, 0x3f, 0x3ff, 0xda31, 0x5}, {0x3, 0xffff, 0xfffff000, 0x1000, 0x8954, 0x3}, {0x2000, 0x1, 0x3, 0x2, 0x7, 0x1ff}, {0xfffffffd, 0x3, 0x3ff, 0x400, 0xff, 0x9}, {0x9, 0x5, 0xffff, 0x2, 0x3, 0x1}, {0x9, 0x3, 0x5, 0x6, 0xb313, 0xffffffff}, {0x5, 0x5, 0x3, 0x7, 0x4, 0x1}, {0x0, 0x7fff0, 0x7, 0xd6, 0x190000, 0x4}, {0x400, 0x401, 0x0, 0xf0b, 0x9, 0x4b5}, {0xe87, 0x7, 0xa09, 0x27, 0xa08, 0x7fff}, {0x1, 0x0, 0x7727, 0x101, 0x6, 0x4}, {0x9, 0x8001, 0x7, 0xc9c1, 0x2, 0x80000001}, {0x1, 0x0, 0xf9, 0x18, 0xe46, 0x1ff}, {0x2, 0x7, 0x7, 0x5583, 0x9, 0x83}, {0x3, 0x4c1, 0x2, 0x9, 0x7fffffff, 0x7ff}, {0x5, 0xbe4, 0x401, 0x8, 0xffffdc57, 0xfffffffd}, {0x7ff, 0x8, 0x2bd6, 0xffff, 0xb94, 0xffffff29}, {0xffffff00, 0x4, 0x2, 0x4, 0x800000, 0x3}, {0x6, 0x80000001, 0x8, 0x5, 0x5, 0x8}, {0x7, 0x7, 0x5, 0x8, 0x2, 0xfe000000}, {0x80, 0x80000000, 0x1800, 0x2, 0x2, 0x80000001}, {0x6, 0x3, 0xd1f, 0x80, 0x7, 0x1ff}, {0x3f, 0xadd, 0x2, 0x3, 0x0, 0x3}, {0x8, 0x1, 0x7, 0x8, 0x1, 0x7}, {0x8, 0xf6, 0x2, 0xb7810e9, 0xfff, 0x401}, {0x5, 0x9, 0x5, 0x8b9, 0x4, 0x3}, {0x1000, 0xb3e5, 0x3f, 0x0, 0x0, 0x101}, {0x6, 0xb865, 0x9, 0x8, 0x3, 0x2}, {0x3ff, 0x3ff, 0x8000, 0x4633, 0xfb7, 0x7}, {0x6, 0x9, 0x6, 0x4, 0x5, 0x9}, {0x7fff, 0x401, 0x3f, 0xc056, 0x100, 0x3}, {0x9, 0x3a7, 0x8, 0x20, 0x4, 0x9}, {0xff, 0x5000, 0xffffffff, 0x3d9, 0x5, 0x8}, {0x40, 0x401, 0x7, 0x200, 0x2, 0x628}, {0xb54, 0xd1a, 0x33c, 0x5, 0x9}, {0x80000000, 0xfff, 0x9, 0x1, 0x80, 0x4}, {0x22, 0x81, 0x6, 0x40b, 0xffff, 0x6020}, {0xf21, 0x5, 0x40, 0x3ff, 0x8, 0xfffffffe}, {0x1, 0x1, 0x6, 0x3, 0x1, 0x379f}, {0x0, 0x2a, 0x7, 0x0, 0x401, 0x6}, {0x1, 0x7f, 0x6, 0x101, 0xfff}, {0x4, 0x9, 0xfffffff8, 0x8, 0x8000000, 0x9}, {0xcd7, 0x200, 0xf7, 0x3, 0x7fff, 0x401}, {0x4, 0x8, 0x81, 0x8, 0x4, 0x1}, {0x4, 0xcf, 0xfffffbff, 0x36, 0x9d, 0x3ff}, {0x80000000, 0x9, 0x10000000, 0x2, 0x1000, 0x3}, {0x3, 0x1, 0x7ff, 0xebf, 0xffff, 0x1ff}, {0x4, 0x2, 0x87e, 0x3, 0x2, 0x3f}, {0x200, 0x4, 0x1000, 0x7, 0x0, 0x3}, {0x67b, 0x9b68, 0x6, 0x7ff, 0x10000, 0x7dab}, {0x5b15, 0x12, 0x3, 0x7, 0x2, 0x401}, {0x4, 0x2, 0x4, 0x37, 0x7fffffff, 0x8}, {0x6, 0xfffffb74, 0xc550, 0xfffffff9, 0x1b5, 0xf9}, {0x8, 0x7, 0xff, 0xfffffff8, 0x7fffffff, 0x1}, {0x1, 0x3, 0x4, 0x8, 0xf998, 0x3}, {0x400, 0x3, 0x1, 0x7, 0x1000, 0x20}, {0x1f800000, 0x3ff, 0x0, 0x1, 0xd1ff083, 0x3}, {0xbef5, 0x20, 0x5e, 0xff, 0x9, 0xffff}, {0x3, 0x41, 0xffff3e33, 0x4, 0x5694, 0xde7}, {0x9, 0x3, 0x158, 0x0, 0x9, 0x9a1}, {0x80000001, 0x9, 0xffff, 0x413a, 0xa6, 0x9}, {0x6, 0x7ff, 0x7, 0x5, 0x7, 0x1}, {0x39, 0x5, 0x8, 0x2, 0x69, 0x1}, {0x7, 0x6, 0x7, 0x1, 0x6, 0x5}, {0xfffffffe, 0xd533, 0x8, 0x9, 0xfffffffd, 0x8}, {0x3, 0x6, 0x2c, 0x3, 0xfe3, 0x5}, {0x0, 0x7, 0xfff, 0x6, 0x1b}, {0x3, 0x8, 0x9c4, 0xffff, 0xffffffff, 0x800}, {0x101, 0xffffffff, 0x1, 0x9, 0x92, 0x540c}, {0x9, 0x400, 0x80000000, 0x400, 0x0, 0x7f}, {0x46, 0xb8cd, 0x9, 0x80000001, 0x5a, 0x2}, {0x4, 0xc5fd, 0x2, 0x8, 0xd2dd, 0x7b0000}, {0x7f, 0x80000001, 0x6, 0x80000000, 0x3, 0x8000}, {0x3ff, 0x1, 0xf980, 0x20e, 0x7fffffff, 0xfffffffa}, {0xfffeffff, 0x8, 0x9, 0x4, 0x7ff}, {0x8000, 0x7d, 0x4, 0x9, 0x0, 0x5}, {0x78, 0xe5, 0x1, 0xe674, 0x7, 0x7}, {0x5, 0xd88, 0x401, 0x7, 0x7, 0x1ff}, {0x1000, 0xcf8, 0x2, 0x1, 0xfff, 0x9}, {0x4, 0x9, 0x7, 0x4, 0x6, 0x9}, {0x7, 0x8, 0x2, 0xffffff04, 0x7, 0x1f}, {0x349, 0x2, 0x3, 0x38c2, 0xf2, 0xfffffff8}, {0x7fffffff, 0x80000000, 0x8de6, 0x400, 0x2, 0x525}, {0x3, 0x8, 0x9, 0x1, 0x4, 0x20}, {0x1f, 0x800, 0x2, 0x74efda2a, 0x37, 0x3d}, {0x8, 0x0, 0xaa4a, 0xff, 0xfffffff8, 0x1}, {0x4, 0x1, 0x8, 0xfffffff7, 0x9}, {0xffff, 0x1, 0x1, 0xd4a, 0x1f, 0x3}, {0x2, 0x3, 0xecb5, 0x2e, 0x200}, {0x80, 0x1, 0xffffffff, 0x757, 0x3, 0x2}, {0x9, 0x1ff, 0xcffa, 0x0, 0x5, 0x200}, {0x3, 0x7, 0x80000000, 0x1, 0x7f, 0x1}, {0x1a6c5e79, 0x7, 0x2, 0x5, 0x7ba3, 0x7}, {0x10, 0x20, 0x1, 0x4, 0x3, 0x100000}, {0x6, 0x1, 0x41a, 0xfffffff8, 0x3, 0x4}, {0x4, 0x4, 0x8ff8, 0x3, 0xff, 0x7}, {0x31, 0x3dc, 0x0, 0x7, 0x6, 0xa7e0}, {0x5, 0x8000, 0x7, 0x9, 0x401, 0xf961}, {0x1, 0x80000001, 0xffff8001, 0x6ef2, 0xf2}, {0x5, 0x9, 0x4, 0x4, 0x7ff, 0x8}, {0x5, 0x2fa, 0x4, 0xb0, 0xe46, 0x3}, {0xad8a, 0x2, 0xc5, 0xe2, 0x7, 0xb07b135b}, {0x400, 0x3, 0x5, 0x7, 0x8, 0x1ff}, {0x7, 0x7, 0x2, 0xfffffffd, 0xca, 0x3}, {0x4, 0x3, 0x0, 0x4, 0xfe, 0x5}, {0x8, 0x20, 0x9, 0x4, 0x39, 0x4800000}, {0x3, 0xed, 0xf5e3, 0x9, 0x20, 0x80000000}, {0x8, 0x8, 0x2, 0x5, 0x3, 0x1f}, {0x1397c7f9, 0x1, 0x4, 0x3, 0x10001}, {0x1, 0x3, 0x1000, 0x0, 0x5, 0x4e14}, {0x49d3, 0x5, 0x1f, 0x8001, 0x3, 0x10000}, {0x0, 0x8, 0x8, 0x4, 0x8, 0x5}, {0x9, 0x4, 0x4, 0x1, 0x8}], [{0x5}, {0x5, 0x1}, {0x2, 0x1}, {0x0, 0x1}, {0x3}, {0x5, 0x1}, {0x3}, {0x0, 0x1}, {0x4, 0x1}, {0x2}, {0x1, 0x1}, {0x2, 0x1}, {0x2, 0x1}, {0x5, 0x1}, {0x2}, {0x5, 0x1}, {0x2}, {0x3, 0x1}, {0x4}, {0x3}, {0x4, 0x1}, {0x1}, {0x5}, {0x4, 0x1}, {0x4, 0x1}, {0x1, 0x6a8125defac3e888}, {0x4, 0x1}, {0x5}, {0x1}, {0x4}, {0x2, 0x1}, {0x1}, {0x2}, {0x1, 0x1}, {0x3, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x3}, {}, {0x0, 0x1}, {0x2}, {0x1, 0x1}, {0x5, 0x1}, {0x2}, {0x4}, {0x1, 0x1}, {0x1, 0x1}, {0x7, 0x1}, {}, {}, {0x5}, {0x4}, {0x1}, {0x1, 0x1}, {0x4}, {0x3}, {0x6, 0x1}, {0x1}, {0x2, 0x1}, {0x5}, {0x3}, {0x1, 0x1}, {0x5}, {0x3, 0x1}, {0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x4, 0x1}, {0x3, 0x1}, {0x2}, {0x2}, {0x4}, {0x1, 0x1}, {0x5}, {0x3}, {0x4}, {}, {0x3, 0x1}, {0x2, 0x1}, {0x0, 0x1}, {0x1, 0x1}, {0x3}, {0x4}, {0x2}, {0x3, 0x1}, {0x4, 0x1}, {0x1}, {0x5, 0x1}, {0x4}, {0x4}, {0x1}, {}, {0x4, 0x1}, {0x0, 0x1}, {0x1}, {0x3, 0x1}, {0x1}, {0x4, 0x1}, {0x4, 0x1}, {0x3}, {0x3}, {0x5, 0x1}, {0x4, 0x1}, {0x0, 0x1}, {0x4, 0x1}, {0x6, 0x1}, {0x2, 0x1}, {0x3}, {0x3, 0x1}, {0x4}, {0x4, 0x1}, {0x4, 0x1}, {0x4}, {0x5}, {0x3}, {0x0, 0x1}, {0x2, 0x1}, {0x3, 0x1}, {0x4}, {0x1, 0x1}, {0x3, 0x1}, {0x5}, {0x0, 0x1}, {0x2, 0x1}, {0x4, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x1}], 0x1}}, @TCA_PEDIT_PARMS={0xee0, 0x2, {{{0x9, 0xee, 0x8, 0x1, 0x5791}, 0x0, 0x0, [{0x4a, 0xfffffffb, 0x794, 0x7, 0x2, 0x7}, {0x6, 0x0, 0x2, 0x3, 0x0, 0x8}, {0x3, 0x4, 0x400, 0x7, 0x1, 0x8f}, {0x2, 0xccc, 0x3, 0x6, 0x5, 0x6}, {0x400, 0x7fff, 0x2, 0x400, 0x7, 0x1}, {0x6, 0x5e, 0xc483, 0x10000, 0x7f, 0x6b}, {0xb66, 0xf9, 0x525e908c, 0x643e, 0x3, 0x6}, {0x81, 0x2, 0x1, 0x6, 0x7fffffff, 0x63af}]}, [{0x9, 0x99, 0x1000, 0x1, 0x100, 0x1f}, {0x9, 0xffff, 0x6, 0x3, 0xd18e1f1, 0x5fe}, {0x5, 0x3, 0x8, 0x7ff, 0x1, 0x5}, {0x7, 0x8, 0x1f, 0x8000, 0xb5, 0xff}, {0x94f, 0xffff, 0xffffffff, 0x5, 0x3, 0x6f}, {0xffffffc8, 0x6, 0xd4, 0x101, 0x3, 0x4}, {0x6, 0x8001, 0xad, 0xdff7, 0x3, 0x5}, {0xffffffff, 0xfe, 0x7, 0x2, 0x100, 0x7fffffff}, {0x40, 0x7fff, 0x7fffffff, 0x0, 0x5, 0x80000000}, {0x705a, 0x20, 0xfffff001, 0x2, 0x2, 0x5}, {0x8, 0x4, 0x4, 0x6, 0x9, 0x5}, {0x83f, 0x3, 0x6, 0xef1d, 0x4, 0x1}, {0x7fffffff, 0x7, 0x6, 0x200a, 0x5, 0x6}, {0xb40b, 0x9, 0x8, 0x63dbe819, 0x1, 0x8001}, {0x7fff, 0xff, 0x2, 0xc4c, 0xfffffff8, 0x20}, {0x1, 0xb4af, 0x3, 0xe000, 0x1b, 0x1641}, {0x0, 0x9, 0x7f, 0x9, 0x7, 0x6}, {0xff, 0x6, 0x1000, 0x6, 0xf1, 0xfffffff8}, {0xba, 0x7, 0x10000, 0x3, 0x400, 0x5}, {0x4, 0x6, 0xfe, 0x6, 0x7, 0x6}, {0x10, 0x40, 0x1, 0x3, 0xafca, 0xb90}, {0x1000, 0x7, 0x98, 0x0, 0x0, 0x10001}, {0x8100000, 0x3, 0xe930, 0x401, 0x0, 0x8}, {0x0, 0x401, 0x7, 0x7, 0x800, 0xfffffffe}, {0x0, 0x5, 0x2, 0x1, 0x6, 0x3c4}, {0x9, 0x20, 0x5, 0xc7d0, 0x600, 0x6}, {0x1, 0x9, 0x8, 0x77, 0x6, 0x81}, {0xfffffc00, 0x2, 0x0, 0xadcb, 0x8, 0x1}, {0xffe00000, 0x2f53, 0xeb5, 0x0, 0x4, 0x2}, {0x9, 0x2, 0x5, 0x2, 0x2, 0x3}, {0x1ff, 0x2, 0x0, 0x5, 0x0, 0x7}, {0x6, 0x0, 0x1, 0x7, 0x6, 0x5eef8b78}, {0x3, 0x9, 0x7fffffff, 0x7, 0x150d, 0xcca}, {0xeb0, 0x5, 0x4, 0x1f, 0x7, 0x80000000}, {0x7, 0x7f, 0x3, 0x2, 0x1, 0xff}, {0x8001, 0x6, 0x3, 0xb77, 0x6, 0x7}, {0x9, 0x6, 0x2, 0x81, 0x7fff, 0x4}, {0x30800000, 0x1, 0x10000, 0x0, 0x6}, {0x7, 0x6, 0xfffffff0, 0x2cc7, 0xffff7fff, 0x4}, {0x10001, 0x5, 0x3, 0x80, 0x2, 0x1}, {0x0, 0x1, 0xa7, 0x50e0, 0x6, 0x1}, {0x0, 0x8, 0x1208ed5a, 0x7, 0x7fff, 0x9}, {0x617, 0x0, 0x3, 0x7, 0xffffffff, 0x4}, {0x9, 0xa7, 0x6, 0x200, 0x2, 0xe43e}, {0x3be83e8b, 0x0, 0x9, 0x7a13, 0x800, 0x4}, {0xabe1, 0x8b, 0x6, 0x9, 0x3, 0xba}, {0x5, 0x20, 0x1, 0x40, 0x9, 0x1}, {0x82f3, 0x1f, 0x0, 0x80000000, 0x5000, 0x4}, {0x3, 0x400, 0x5, 0x0, 0x5a, 0x2}, {0x1, 0x3, 0x81, 0x5, 0x0, 0x7}, {0x0, 0x2, 0x9, 0x6ec6b2e0, 0x6, 0x3}, {0x40000000, 0x6, 0x80, 0x4, 0x6, 0x3}, {0x9, 0x5, 0x92e5, 0x4, 0x801b, 0x2e3f}, {0x7ff, 0x2a, 0x1, 0x1f, 0x4, 0x81}, {0x80000001, 0xfffffffa, 0xffffff81, 0x6fac, 0x10000, 0x9}, {0xf80, 0x1, 0x101, 0x7ff, 0x8, 0xfffffffb}, {0x7, 0x6, 0x10001, 0x8, 0x8, 0x7063}, {0x7f, 0x9, 0x8, 0xfffffffa, 0x5, 0x2}, {0xffffff61, 0x1, 0x0, 0x1f, 0xff, 0x7}, {0x7, 0x7, 0x1, 0x8, 0x200, 0xfff}, {0x1, 0x620d, 0xb64, 0x1, 0x6, 0x2}, {0x5, 0x6, 0x4, 0x9}, {0x86fb, 0x938c, 0x7, 0x553e5e3a, 0x9, 0x7}, {0x100, 0x2, 0x2, 0x80, 0x0, 0x65}, {0x949c, 0x7, 0x2, 0x2a99e824, 0xfffffffb, 0x6}, {0x5, 0x2, 0x8, 0x7, 0xfffffff6, 0x3}, {0xfffffffc, 0x0, 0x0, 0x8001, 0xff, 0x8000}, {0x8, 0x80000000, 0x0, 0x1, 0x7, 0x7}, {0x8, 0x3, 0x2, 0x6, 0x0, 0x5}, {0x80000000, 0x1ff, 0x0, 0xff, 0x101, 0x200}, {0x8, 0x4, 0x401, 0xffffffe0, 0x8, 0x2}, {0x2, 0x2, 0x5, 0x7, 0x3, 0x2}, {0x4, 0x7f92, 0x5, 0x20, 0x8, 0x80000001}, {0xffffffff, 0x0, 0x8de5, 0x7, 0x6, 0x4}, {0x9, 0x8000, 0x1, 0x101, 0xfffffffb, 0x66f}, {0x1, 0xfff, 0x6, 0x8, 0x2d}, {0x2, 0x10001, 0x10000, 0x100, 0xffffffff, 0xfffffff8}, {0xb475, 0x80000001, 0x16, 0x9, 0x3d, 0x8}, {0x800, 0x2c1, 0x2, 0x1f, 0xfff, 0x9a}, {0x8000, 0x5, 0xffffffee, 0x2, 0x1, 0x401}, {0x2, 0x3, 0x40, 0xffffffff, 0x3, 0xfffff000}, {0x2, 0x400, 0xda3a, 0x3, 0x6, 0x3f}, {0x7fffffff, 0x1221, 0x0, 0xfffffffa, 0x3, 0xa14}, {0x1000, 0x1ff, 0x1, 0x1, 0x6, 0x9}, {0x3, 0x7, 0x0, 0x2, 0x74f, 0xfffffff9}, {0x0, 0x1f, 0x0, 0xb3c7, 0x0, 0xfffffa64}, {0x3, 0x8001, 0x1, 0x4, 0xfffffffa}, {0x240, 0x6, 0x1, 0x7, 0x4, 0x80}, {0x1, 0x0, 0x2, 0x800, 0x1, 0x2}, {0x4, 0xae73, 0x1000, 0xffffffff, 0x100, 0xfffffc01}, {0xbd, 0x3, 0x5, 0x7ff, 0x3254, 0xfffff30c}, {0xda, 0x4, 0x7, 0x0, 0x0, 0xffffffff}, {0xff, 0x5, 0x3, 0x28, 0x2, 0x8}, {0x74719db4, 0x1f, 0x1, 0x4, 0x7ff, 0x1ff}, {0x3f, 0x81, 0xc82f, 0x7, 0x1, 0x401}, {0x3, 0x9000, 0x88, 0x4f3, 0x5, 0x6}, {0x497, 0x8001, 0xfffffffa, 0xfffffff7, 0xd21000, 0x10000}, {0x3, 0xc7, 0x4, 0x9, 0x0, 0x2}, {0x7, 0xb47, 0x4, 0x2, 0x7, 0x74}, {0x5, 0x0, 0x6, 0x3348b6d4, 0xffff, 0x1}, {0x8, 0x4, 0x7c, 0x10001, 0x10001, 0x6}, {0xff, 0x878a, 0x3, 0x1ff, 0x0, 0x80000000}, {0x9, 0x1, 0x4160, 0x29, 0x80000001, 0x7}, {0x2, 0x8, 0xfffffe01, 0x1, 0x1, 0x43}, {0x3, 0x3f, 0x9f, 0x7ff, 0x3ff, 0x6}, {0x80, 0xa0, 0x77, 0x6, 0x75b, 0xcd0}, {0x1000, 0x5, 0x7dd, 0x7a0f, 0x5, 0x7}, {0x101, 0x1, 0x3, 0x8, 0x2, 0xcde7}, {0xe3c, 0x36, 0x7, 0x7, 0xc4, 0x9}, {0x1, 0x40, 0x8, 0x1, 0x0, 0x8001}, {0x6, 0x1f, 0x5, 0xffff, 0x7fff, 0x81}, {0x60000, 0x14, 0x1, 0x7fffffff, 0x0, 0x1ff}, {0x9, 0x0, 0x6, 0x2, 0x3f, 0xc8ae}, {0x9, 0x1, 0x8, 0xfe, 0x3ff, 0x9}, {0x8bf, 0x800, 0x61, 0x2, 0x5, 0x1}, {0x1, 0x10000, 0x3, 0x1, 0x3f, 0x3}, {0x3ff, 0xfffff0f3, 0x1, 0x0, 0x7, 0x9}, {0x7, 0x0, 0x1ff, 0x3d2, 0x2, 0x90}, {0x7, 0x1, 0x6, 0x6, 0x4, 0xfff}, {0x401, 0x8, 0x4, 0x5, 0xf953, 0xffff}, {0x1, 0x10000, 0x101, 0x1, 0x3, 0x10001}, {0x7, 0x3, 0x0, 0x7, 0xfffffe01, 0x9cb}, {0x6, 0x8d2, 0x4, 0x5, 0x3ff}, {0x4bbc, 0x7, 0x10000, 0x1f, 0x4, 0x9}, {0x95a, 0x7, 0x8, 0x2, 0x81, 0x2}, {0xcb, 0x7, 0x5, 0x40, 0x101, 0x5}, {0x23, 0x3ff, 0xffff, 0x6, 0x8, 0x3f}, {0x4, 0x6, 0x4, 0x0, 0x7ff, 0x4}], [{0x2}, {0x5}, {0x4}, {0x3, 0x1}, {0x5, 0x1}, {0x0, 0x1}, {0x1}, {0x4}, {0x2}, {0x4}, {}, {0x2}, {0x3}, {0x4, 0x1}, {0x3, 0x1}, {0x2}, {0x4}, {0x2, 0x1}, {0x2}, {}, {0x2}, {0x1}, {0x4, 0x1}, {}, {0x2, 0x1}, {0x4}, {}, {0x2, 0x1}, {0x4}, {0x1}, {0x4}, {0x3}, {0x0, 0x1}, {0x0, 0x1}, {0x0, 0x1}, {0x1}, {0x5, 0x1}, {0x5, 0x1}, {0x5}, {0x1, 0x1}, {0x2}, {}, {}, {0x4}, {0x2}, {0x2}, {0x1}, {0x0, 0x1}, {}, {0x3}, {0x1, 0x1}, {}, {0x3}, {0x4, 0x1}, {0x4, 0x1}, {0x5, 0x1}, {0x5, 0x1}, {0x4, 0x1}, {0x4}, {0x1}, {0x1}, {0x0, 0x1}, {0x6}, {0x1}, {}, {0x5, 0x1}, {0x3}, {}, {0x2}, {0x3}, {0x3, 0x1}, {0x2}, {}, {0x5, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x2}, {0x3, 0x1}, {0x3, 0x1}, {0x3}, {0x2}, {0x5}, {0x3}, {0x2, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x2, 0x1}, {0x2, 0x1}, {}, {}, {0x4}, {0x1}, {}, {0x0, 0x1}, {0x5}, {0x2}, {0x1, 0x1}, {0x4}, {0x4}, {0x2}, {0x1}, {0x3}, {0x1, 0x2}, {0x4, 0x1}, {0x1, 0x1}, {}, {}, {0x1, 0x1}, {0x2}, {0x2}, {0x5, 0x1}, {0x2, 0x1}, {0x3, 0x1}, {0x1}, {0x2, 0x1}, {0x5}, {}, {0x3}, {0x5}, {0x4}, {}, {0x1}, {0x6, 0x1}, {0x5}, {0x3}, {0x5, 0x1}, {0x5}, {0x3, 0x1}], 0x1}}, @TCA_PEDIT_KEYS_EX={0x80, 0x5, 0x0, 0x1, [{0x24, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}]}, {0x3c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x5}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}]}, {0x1c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}]}]}, @TCA_PEDIT_KEYS_EX={0x44, 0x5, 0x0, 0x1, [{0x34, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}]}, {0xc, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x2}]}]}, @TCA_PEDIT_KEYS_EX={0x64, 0x5, 0x0, 0x1, [{0x14, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}]}, {0x2c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x3}, @TCA_PEDIT_KEY_EX_CMD={0x6}]}, {0xc, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}]}, {0x14, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x3}, @TCA_PEDIT_KEY_EX_CMD={0x6}]}]}, @TCA_PEDIT_KEYS_EX={0x80, 0x5, 0x0, 0x1, [{0x14, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x5}]}, {0xc, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}]}, {0x1c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}]}, {0x24, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6}, @TCA_PEDIT_KEY_EX_CMD={0x6, 0x2, 0x1}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}]}, {0x1c, 0x6, 0x0, 0x1, [@TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x3}, @TCA_PEDIT_KEY_EX_HTYPE={0x6, 0x1, 0x4}]}]}, @TCA_PEDIT_PARMS={0xe50, 0x2, {{{0x8, 0xf13, 0x1, 0x6, 0x5}, 0x1, 0x3f, [{0x1, 0x1ff, 0x7, 0x7, 0x9, 0x57264ed1}, {0x5, 0x7ff, 0x40, 0xffff, 0x10001, 0x200}]}, [{0xffffff80, 0x200, 0x5, 0x6, 0xfff, 0x5a}, {0x5, 0x400, 0x1f, 0x3, 0x6, 0x3f8}, {0xd5, 0x1, 0x3, 0xffff, 0x6, 0x80000000}, {0x0, 0x2b, 0x401, 0x65b, 0x8, 0xa638}, {0x80, 0x8fd0, 0x2, 0x2, 0xf98, 0x604}, {0x0, 0x3, 0x4, 0x2, 0x80, 0x1}, {0x7f, 0x568c, 0x4, 0xffffff12, 0x2, 0x9}, {0x7f, 0x65, 0x0, 0x98000000, 0x1, 0x2}, {0x9, 0x2, 0x2, 0x200, 0x4, 0x400}, {0x7, 0x80000001, 0x8000, 0x1, 0x8000, 0x3f00}, {0x7fffffff, 0x9, 0x9, 0x8, 0xa827c20, 0x7ff}, {0x1, 0x9, 0x3, 0xbf, 0x80000000}, {0x8, 0x9, 0x8, 0x7fff, 0xed1, 0x8a}, {0x1, 0x2401, 0x4, 0x277, 0x8, 0xe81c}, {0x6, 0xffffffff, 0xfffffff7, 0x30000000, 0x6, 0x7ff}, {0x76, 0x3, 0x4, 0x1, 0x5, 0x15e256b5}, {0x200, 0x8001, 0x4, 0x2, 0x0, 0x8000}, {0x7f, 0x5, 0x1000, 0x1, 0x40, 0x2cd}, {0x29b0, 0x57, 0x800, 0x0, 0x2, 0xe86a}, {0x9, 0xb1, 0x2, 0x5, 0x4, 0x8001}, {0x3, 0x9, 0x51, 0x3f, 0x1f}, {0x40, 0x0, 0x517d3dbd, 0x9, 0x7cc, 0x80000001}, {0x4, 0x3c5, 0xb50, 0x4, 0x7}, {0xce, 0xfffffffe, 0x4, 0x800, 0x8, 0x1}, {0x0, 0x1, 0x8001, 0x7fff, 0xe000, 0x4}, {0x1, 0x6a3, 0x80, 0xb8, 0x200}, {0x5, 0x0, 0x3, 0xf63, 0x4, 0x2}, {0xaafb, 0x5, 0x0, 0x0, 0x10001, 0x4}, {0x8001, 0x1, 0x6, 0x6, 0xbb15}, {0xa68, 0x14000000, 0x1, 0x7fff, 0x2, 0x4}, {0x9, 0x2, 0x7fffffff, 0x81, 0x8, 0x5}, {0x101, 0xfffffe01, 0x345, 0x8510, 0x6, 0x2}, {0x5, 0x8, 0x8, 0x1ff, 0xfffffffe, 0x3}, {0x7fff, 0x80000001, 0x10000, 0x0, 0x1f51, 0x3}, {0x1, 0x1400000, 0x1f, 0x8, 0xe1eb, 0x6}, {0x5, 0x67, 0x8, 0x2, 0xc62000, 0x2}, {0x2, 0xe6fb, 0x401, 0xcb6, 0x1618, 0x8}, {0xfffffffe, 0x7, 0x1, 0x7, 0x1cd, 0x800}, {0x4, 0x2, 0x5, 0xfffffffb, 0x1000000, 0x6}, {0xfffffff8, 0x8, 0x80, 0x1ff, 0x6, 0xfff}, {0x9, 0xffffff00, 0x5, 0x2, 0x7, 0x80000001}, {0x7, 0x200, 0x2, 0x3e4, 0x7, 0xc828}, {0x9, 0x0, 0x345, 0x7, 0x6837a3ce, 0x20}, {0xfff, 0x80, 0x280, 0x3f, 0xffff, 0x83}, {0x7, 0x4, 0xfda3, 0x7f, 0x1, 0x8000}, {0xbc6b, 0x101, 0xff, 0x3f, 0x7, 0x3}, {0x2000, 0xffffffff, 0x3ff0, 0x10001, 0x27, 0x22c8c67e}, {0x3, 0x4, 0x6, 0x4, 0xfffff800, 0x1fbd}, {0x7, 0x842f, 0x1ff, 0xffe0000, 0x1, 0xffff0000}, {0x1000, 0xdec7, 0x1, 0x9, 0x2ea, 0x81}, {0x5, 0x7fff, 0x2, 0x0, 0xffffffff, 0x294}, {0x101, 0x10000, 0x2, 0x8, 0x5, 0xff}, {0xdd5e, 0x7, 0x2, 0x2, 0x3, 0xb1d}, {0x8, 0x7f, 0x89, 0x5, 0x0, 0x3}, {0x9, 0x0, 0x3, 0x3, 0x4}, {0x10001, 0x400, 0x5, 0x8, 0x3, 0xffff}, {0x1, 0x9, 0x9, 0x6, 0x6, 0x7}, {0x0, 0x14000000, 0xca02, 0x9, 0x6, 0x7}, {0x0, 0x1ca, 0x80, 0xfffffff7, 0x4, 0x8}, {0x9, 0x8, 0xffffa942, 0x7, 0x400, 0x1f}, {0x532, 0x7a, 0x3ff, 0x3, 0x1, 0x2}, {0x80000001, 0xbe, 0xffffff81, 0x3, 0x20, 0x6}, {0x3, 0x3, 0x7, 0x10001, 0x4}, {0x4, 0x1, 0x2, 0x0, 0x38d, 0x401}, {0x3, 0x5, 0x0, 0x8, 0x1000, 0x5}, {0x8, 0x3fb4, 0x3, 0x1, 0x8, 0x3}, {0x4, 0x8000, 0xc50b, 0x0, 0x3, 0x2}, {0x6, 0xbe, 0xe7, 0x9, 0x0, 0x18a4}, {0x10001, 0x1, 0x3, 0xed79, 0x1ff, 0x20}, {0x9, 0x6, 0xfffffffd, 0x5, 0x8, 0xc3d}, {0x0, 0x0, 0x3, 0x5f, 0x1, 0x8000}, {0x2, 0x3, 0x1, 0x5, 0x800, 0x5}, {0xe06, 0x5, 0x3, 0x2, 0x3f, 0xff}, {0x40, 0xfffffff8, 0x7, 0x9, 0x7f, 0x40}, {0x400, 0x5, 0xed4, 0x8, 0x3, 0x6}, {0x1, 0x2, 0x6, 0x81, 0x0, 0x9}, {0x9, 0x8, 0x2, 0x7, 0x80, 0x8}, {0x807, 0x6, 0x1000, 0x9, 0x8000, 0x9}, {0xad9, 0xa2fb, 0x4, 0x4, 0x5, 0x400}, {0x4, 0x3ff, 0x65, 0x5, 0x480}, {0x4, 0xff, 0x6964, 0x8, 0x4, 0x2}, {0x3a, 0x10001, 0x7, 0x1, 0xfffffa47, 0x5}, {0x726, 0x401, 0x401, 0xfffffbff, 0xad, 0xe43}, {0xd4, 0x101, 0x6, 0x3, 0x10000, 0x8518}, {0xffffffff, 0x1, 0xfffff5e6, 0xffffffc1, 0x800, 0x3}, {0x7, 0x7fffffff, 0x0, 0x3e7, 0x5, 0x4}, {0x4, 0x40, 0x7fffffff, 0x7, 0x9, 0x1ff}, {0x40, 0xfffffe01, 0x0, 0x101, 0x2, 0x8000}, {0xcb, 0x6, 0x7, 0x10000, 0x6c93, 0x2}, {0x8001, 0x5, 0x3, 0x6, 0x5, 0x8}, {0x200, 0x6, 0x0, 0x0, 0x0, 0x3f}, {0x1, 0xffffffff, 0x5, 0x4, 0x6, 0x9}, {0x9, 0x10000, 0x5c38f5bd, 0x9, 0x3197, 0x1000}, {0x7fff, 0x1, 0x9, 0x6, 0xfff, 0x800}, {0xff, 0x7fff, 0x7, 0x1, 0x9, 0x4}, {0x400, 0x1, 0x20, 0x8000, 0x3, 0x1}, {0x80000000, 0x7, 0x8, 0x6, 0x5e, 0x1}, {0x3ff, 0x5, 0x81, 0x4, 0x7, 0x5}, {0x0, 0x1, 0x80000000, 0x7d1c, 0x80000001, 0x22}, {0x8, 0x207a, 0x0, 0x4, 0x2, 0x8c}, {0xfffffffb, 0x0, 0x5, 0x0, 0x5e9, 0x10001}, {0x9193, 0x48, 0x5, 0x2, 0x7, 0x1d}, {0x200, 0x8, 0x3, 0x6, 0x9, 0x8}, {0x5, 0x20, 0x7f, 0x80000000, 0x32cf, 0xfffffc01}, {0x2, 0x80000001, 0x0, 0xc798, 0x2, 0x1}, {0x3, 0x10001, 0x80000001, 0x6, 0x7, 0xbbfb}, {0xfffffffa, 0xfffffffd, 0xfffffff7, 0x7, 0xc6d, 0x1}, {0x1bfc4f45, 0x7, 0x19a9, 0x9, 0x0, 0x4}, {0x3, 0x8, 0x101, 0x4, 0x1f, 0x10}, {0x9, 0x20, 0x0, 0xfff, 0x8001, 0x4c8a}, {0x1, 0x1ff, 0x7, 0x80000000, 0x80000000, 0x1ff}, {0x9, 0x1, 0x3, 0xc3d, 0x7, 0x5}, {0x5, 0x5bf1, 0x10001, 0x7f, 0x2d0a, 0x1}, {0x401, 0x7f, 0x0, 0x9, 0x7, 0x200}, {0x101, 0x48, 0xec7, 0x2, 0x100, 0x80000000}, {0x8001, 0x6, 0x922, 0x1, 0x1, 0x3f}, {0x800, 0x2, 0x7, 0x7, 0xffff, 0x101}, {0xfffffff8, 0x9, 0x4, 0xd9, 0x1, 0x1}, {0xee3, 0xffff, 0x1, 0x3, 0x7, 0x5}, {0x20, 0x4, 0xff, 0x8, 0x7, 0x401}, {0x6, 0xffffffff, 0xfffffffd, 0x2, 0x9, 0x3}, {0x0, 0x8, 0xb0d, 0x9, 0xffffffff, 0x1}, {0x4a, 0x7, 0x9, 0x5, 0x4, 0x9}, {0x5, 0x8, 0x7fffffff, 0xfffffffe, 0x3, 0x20}, {0x2, 0xf318, 0x8b5f, 0x5, 0x1000, 0x3}, {0x80, 0x5, 0x3ff, 0x3, 0x7f}, {0x3ff, 0xfffffffc, 0x81, 0x901b, 0x3ff, 0x80000001}, {0x5, 0x40, 0x3f, 0x8000, 0x3, 0xef}], [{0x5, 0x1}, {0x5}, {0x1, 0x1}, {0x4, 0x1}, {0x2, 0x1}, {0x1}, {0x6}, {0x4, 0x1}, {0x4}, {0x3, 0x1}, {0x0, 0x1}, {0x4, 0x2}, {0x4, 0x1}, {0x2, 0x1}, {0x2, 0x1}, {0x2, 0x1}, {0x1}, {0x3, 0x1}, {}, {0x1}, {0x637cb742c44ddac5}, {0x4, 0x1}, {0x3}, {0x3}, {0x1}, {0x3}, {}, {0x2}, {0x3}, {0x3, 0x1}, {0x1}, {0x5, 0x1}, {}, {0x1}, {0x5}, {0x5, 0x1}, {0x3, 0x1}, {0x3, 0x1}, {0x1, 0x1}, {0x4, 0x1}, {0x1}, {0x3, 0x1}, {0x5, 0x1}, {0x0, 0x1}, {0x2}, {0x4, 0x1}, {}, {0x0, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x1, 0x1}, {0x4}, {}, {0x3}, {0x5, 0x1}, {0x3, 0x1}, {0x1}, {0x4, 0x1}, {0x5, 0x1}, {0x2, 0x1}, {0x7}, {0x2, 0x1}, {0x5}, {0x2, 0x1}, {0x1, 0xf286a0782fcd96d1}, {}, {0x5, 0x1}, {0x4}, {0x4}, {0x0, 0x1}, {0x4}, {0x1}, {0x4}, {}, {0x4, 0x1}, {0x1}, {0x3}, {0x4, 0x1}, {0x3, 0x1}, {}, {0x0, 0x1}, {0x5, 0x1}, {0x4}, {0x1}, {0x3, 0x1}, {0x1}, {0x2, 0x1}, {0x1, 0x1}, {}, {0x4, 0x1}, {0x0, 0x1}, {0x5}, {0x0, 0x1}, {0x4, 0x1}, {0x0, 0x1}, {0x3, 0x45e725ee6661a67e}, {0x2, 0x1}, {0x5, 0x1}, {}, {0x5, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x4}, {0x4}, {0x5, 0x1}, {0x1}, {}, {0x1}, {0x3, 0x1}, {}, {0x2, 0x1}, {0x0, 0x1}, {0x4}, {0x5, 0x1}, {0x2, 0x1}, {0x5, 0x1}, {}, {0x4, 0x1}, {0x4}, {0x1, 0x1}, {}, {0x0, 0x1}, {0x5, 0x1}, {0x1}, {0x5, 0x1}, {0x3}, {0x2, 0x1}, {0x3}], 0x1}}, @TCA_PEDIT_PARMS={0xeb0, 0x2, {{{0x3ff, 0x4, 0x8, 0xe44, 0x21}, 0x80, 0x5, [{0x7f, 0x80, 0x9, 0x2, 0x2, 0x1a5}, {0x33c3, 0x200, 0x5, 0xfffffffb, 0x80200000, 0x1}, {0xfffffc00, 0x6, 0x800, 0x9d0c, 0x1000, 0x37}, {0x6, 0x3, 0x8001, 0x7fff, 0xffffff9a, 0x7f}, {0x4, 0xcc3, 0x1fd, 0x7fffffff, 0x2, 0x25}, {0x200, 0x3, 0x3, 0x3, 0x7fffffff, 0x200}]}, [{0x0, 0x8, 0x4, 0x8000, 0x1f, 0x101}, {0x1, 0x6, 0xfffffeff, 0x80000001, 0xff, 0x9}, {0x6, 0x8b4, 0x6, 0x7ff, 0x4, 0x3}, {0x7, 0x6, 0x3, 0x66, 0xfffffc59, 0x4}, {0x7, 0x10000, 0x8cbc, 0x0, 0x9, 0x4}, {0x8, 0x8, 0x1, 0x100, 0x401, 0x1f}, {0x0, 0x8, 0x8, 0x101, 0x3, 0x7a000000}, {0x1, 0x1, 0xe7, 0x8, 0x8, 0x6}, {0x8000, 0x1, 0x9, 0x7, 0x5, 0x401}, {0x1, 0x7, 0xa2, 0xfffffeff, 0x4, 0x9}, {0x67d, 0x5c, 0x6, 0x2bf7, 0x2, 0x3}, {0x80000000, 0x1, 0xa70d, 0x9, 0x9}, {0x7, 0x1, 0x4, 0x9, 0x2, 0xffff7fff}, {0x8, 0x1, 0x44, 0x8a6, 0x3f}, {0x5, 0x3ff, 0x3, 0x0, 0xfff, 0x80000000}, {0x2, 0x7, 0x10001, 0x8b7, 0x4, 0x1660}, {0x9, 0x5, 0x1b6d, 0x7f, 0xe212, 0x5}, {0x5ee, 0x2, 0x22b800b3, 0x800, 0xfffffffc, 0x7}, {0x5, 0x1, 0x6, 0x1, 0x9, 0x68}, {0x3ff, 0x9, 0x7, 0x10001, 0x8, 0x2}, {0x1f, 0xb4, 0x4, 0x9, 0x9, 0x7}, {0x4, 0x6, 0x8, 0x0, 0x3f, 0x4}, {0x7, 0x73, 0xc0, 0x3, 0x3f}, {0xf9, 0x10001, 0x0, 0x1, 0xfffffffe, 0xfffff34c}, {0x6, 0x8, 0x5, 0xfffff8b1, 0x0, 0x6}, {0x5, 0x1f, 0x6, 0xffffbfb9, 0x7f, 0x1}, {0x0, 0x1, 0x8, 0x7ff, 0x8000, 0x101}, {0x7, 0x0, 0x1, 0x9, 0x8, 0x97}, {0x8000, 0x2, 0x9, 0x200, 0x4, 0x200}, {0x101, 0x1, 0x3, 0x5, 0x9, 0x4}, {0x7, 0xffff, 0x4, 0xff, 0x3f, 0x2}, {0x6bf, 0x2, 0x2, 0x3, 0x7, 0xbb2e}, {0x3, 0xfffff000, 0x81, 0x5, 0x6}, {0x80000001, 0x3ff, 0xfffffffa, 0x9, 0x81, 0xfffffffe}, {0x10000, 0xffff95b5, 0x3, 0x8e, 0x2, 0x5f1}, {0x3984, 0x2, 0x39a, 0x800, 0xae9, 0x3}, {0x9, 0xe1a, 0x1000, 0x5, 0x1000, 0x1}, {0x8, 0xc000000, 0x6, 0x4, 0x9, 0x4}, {0x6, 0x3, 0x3f, 0xe763, 0xca, 0x20}, {0x40, 0x5, 0x7f, 0x9, 0xc0e7, 0x7}, {0x7, 0xfffffffd, 0x7, 0x1f, 0x800, 0x8000}, {0x1f, 0x0, 0x1, 0x3, 0x8, 0x7}, {0x2bd0e240, 0x1, 0x7, 0x7, 0x3, 0x6}, {0x8ec, 0xfffffff8, 0x401, 0x400000, 0x6, 0x5}, {0xfffffff7, 0xef, 0x80000001, 0xfffffff8, 0x5, 0x5}, {0x8001, 0x8, 0x3, 0x0, 0x0, 0x5}, {0x2, 0xffffb5b1, 0x87b4, 0x10000, 0x4, 0x7fff}, {0xfffffff7, 0x5, 0x50, 0x8001, 0x8001}, {0x9529, 0x1, 0xffffffe4, 0x4550, 0x4}, {0x1f, 0x1ff, 0x8001, 0x8c4, 0x1, 0x62}, {0x0, 0x9, 0x100, 0x10001, 0x0, 0x7}, {0x5, 0xaa0, 0x0, 0x8, 0xfffffff7, 0x3f}, {0x5, 0x3, 0x5, 0x81, 0x7b, 0x81}, {0x7, 0x10000, 0x1, 0x400, 0x3, 0x6}, {0x5, 0x4db2, 0x1, 0x95, 0x6}, {0x6, 0x7, 0xffffffe0, 0x3, 0x8000, 0x1}, {0x1000, 0x8000, 0x2da2, 0x5, 0x81}, {0x8, 0x40, 0x0, 0x80000000, 0x6, 0x8}, {0xa1e, 0x2, 0x8, 0x3, 0x7, 0x9}, {0x7ff, 0x0, 0x9, 0x0, 0x89, 0x5}, {0x4, 0xfffffff8, 0x401, 0x7f, 0x8, 0x8}, {0x3789, 0x8b1, 0x9, 0x8, 0x3, 0x2}, {0x7, 0x5, 0x9, 0x10001, 0x6, 0x5}, {0x7, 0x3, 0x0, 0xe6, 0x3}, {0xffffffff, 0x7, 0x8, 0x6, 0x30b3, 0x8001}, {0x7fffffff, 0x101, 0x4, 0x8, 0x101, 0x9}, {0x0, 0x100, 0x5, 0x5, 0xa4, 0xe33}, {0x1, 0x6, 0x9, 0x4, 0x7, 0x21fc}, {0x8001, 0x9, 0x36c, 0x56, 0x6, 0x8001}, {0xfff, 0x80000000, 0x5, 0x0, 0x2, 0x9}, {0x80000000, 0xb38, 0xfffffffa, 0x0, 0x8}, {0x3, 0x6, 0x10001, 0x3, 0x7, 0x8}, {0x1f, 0x8, 0x8, 0x4, 0x7ff, 0x9}, {0x20, 0x0, 0x8e09, 0xfffffffd, 0xff, 0x9}, {0x66c, 0x6, 0xbe, 0x3, 0x8}, {0x6f85d0fe, 0xace8, 0x80000001, 0x5, 0xfff, 0x8001}, {0x2, 0x3, 0x3f, 0xa30f930, 0x1, 0x9}, {0x7fffffff, 0x5, 0x255, 0x1f, 0x5, 0x8}, {0xcf0, 0x79, 0x7fffffff, 0x3, 0x400, 0xffff0000}, {0x5d6, 0x3, 0xeffd, 0xc26c, 0x494, 0x9}, {0xac, 0x6, 0x7, 0xbde, 0x1000, 0x4}, {0x19, 0xffffffff, 0xd8ca, 0xbce3, 0x287, 0x80}, {0x100, 0xffffff00, 0x2, 0x56b, 0x1, 0x2}, {0x6, 0x8, 0x80000000, 0x2a5, 0x75a0000, 0x3}, {0x80, 0x3, 0x4, 0x1b, 0x66, 0x80000001}, {0x0, 0x6ffe9f8f, 0x6, 0x500, 0x2, 0x1}, {0x80000000, 0x3, 0x1, 0x5, 0x200, 0x10001}, {0xb, 0x0, 0x8, 0x85, 0x7fffffff, 0x9}, {0x7fffffff, 0x1, 0x8, 0x4, 0x2, 0x3}, {0x12, 0x8, 0x401, 0x1, 0x1, 0x8}, {0x8, 0x5, 0x3, 0x5, 0xfffffff7, 0x6188199f}, {0xfffffffa, 0x2, 0x40, 0x0, 0x100, 0x80000000}, {0xfffffff8, 0x5f, 0x6, 0x8000}, {0x7fff, 0x7ff, 0xf1, 0x9, 0x80000001, 0x2}, {0x40, 0x1, 0x1, 0x7, 0xc3, 0x1ff}, {0x40, 0x80000000, 0x67, 0x1, 0x9, 0x1}, {0x101, 0x8, 0x1f, 0xca3c, 0x3, 0x4e0d20fc}, {0x8, 0x3, 0x6827, 0x0, 0x10000, 0x6}, {0xf0, 0x8, 0x10000, 0x6a, 0x0, 0x800}, {0x81, 0xa3, 0x80000000, 0x40, 0x6, 0x7}, {0x20, 0x10000, 0x5, 0x9, 0xd1, 0x100}, {0x8, 0x2, 0xfffffffa, 0x7, 0x7, 0x4}, {0x5, 0x3b, 0x3ff, 0x7, 0x80000001, 0x8792}, {0x1, 0x2669, 0x8000, 0x3, 0x6, 0x7}, {0xa5, 0x1e6, 0x1, 0xc7, 0x400, 0x21ac}, {0x1, 0x1000, 0x40, 0xa0, 0x3, 0xf7}, {0x3, 0x80000001, 0x7fff, 0x0, 0xfffffff7, 0x3}, {0x8, 0xcd02, 0x2, 0x0, 0xb65, 0x7}, {0x2, 0xfff, 0x10000, 0x4, 0x21, 0x6}, {0x0, 0x1000, 0x2, 0xfff, 0xfffffffb, 0x80}, {0x2, 0x2, 0x54, 0x1, 0x401, 0x3}, {0x101, 0x8, 0x8, 0xab0, 0x3484, 0x40}, {0x2, 0x5, 0xad, 0x946, 0xb1, 0x9}, {0x9, 0x3ff, 0x4, 0x80000001, 0x101, 0x7fff}, {0x7, 0x5748, 0x5, 0x3ff, 0x79d}, {0x9, 0x8ad5, 0x8b1, 0x3, 0x2, 0x10000}, {0x6, 0xffffffe0, 0x8, 0x5, 0x3}, {0x171, 0xa3e0, 0x7, 0x3, 0x8, 0x200}, {0x7, 0x54, 0x4, 0x3c87, 0x4, 0x1ff}, {0xffff, 0x58000000, 0x3, 0x400, 0x1, 0x7}, {0xce7d, 0x9, 0x62, 0x1000, 0x4, 0x10001}, {0x8, 0x6, 0x2a0, 0x1, 0x3ff, 0x1f70}, {0x80000001, 0x101, 0xfffffe01, 0x0, 0xd8, 0x4}, {0x8, 0x1000, 0x0, 0x6, 0x3, 0x1}, {0x6, 0x40000000, 0x3, 0x7, 0x1, 0x9}, {0x7, 0x0, 0x0, 0x7, 0x7, 0x8}, {0x1, 0x8, 0x1, 0x81, 0x4, 0x6}, {0xffffffff, 0x0, 0x101, 0x101, 0x77, 0x2f}], [{0x1}, {0x3, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x4}, {0x5}, {0x1}, {0x1}, {0x3, 0x1}, {0x2, 0x1}, {0x1}, {0x4, 0x1}, {0x0, 0x1}, {0x2, 0x1}, {0x4}, {0x4, 0x1}, {0x4}, {0x4, 0x1}, {0x1}, {0x0, 0x1}, {0x5}, {0x1}, {0x5, 0x1}, {0x1}, {}, {0x2}, {0x2}, {0x3, 0x1}, {0x4, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x1}, {0x3}, {0x2}, {0x0, 0x1}, {0x4, 0x1}, {0x4}, {0x1}, {0x4, 0x1}, {0x2}, {0x2, 0x1}, {0x5, 0x61b5f23414df8640}, {}, {0x4}, {0x3, 0x1}, {0x5, 0x1}, {0x5}, {0x5, 0x1}, {0x0, 0x1}, {0x2, 0x1}, {0x5, 0x1}, {0x5}, {0x2, 0x1}, {0x0, 0x1}, {0x3, 0x1}, {0x4, 0x1}, {0x3}, {0x4}, {0x4}, {0x3, 0x1}, {0x2}, {0x0, 0x1}, {0x5}, {0x2, 0x1}, {0x1, 0x1}, {0x4}, {0x0, 0x1}, {0x4, 0x1}, {0x4, 0x1}, {}, {0x3}, {0x4}, {0x4, 0x92d7e51e2e4f1860}, {0x2, 0x1}, {0x2}, {0x4}, {0x4, 0x1}, {0x5}, {0x3}, {0x5}, {0x2, 0x1}, {0x4}, {0x2}, {0x1, 0x1}, {0x0, 0x1}, {0x51454e69ac736098, 0x1}, {0x2}, {0x4, 0x1}, {0x1}, {0x3}, {0x5, 0x1}, {0x3, 0x1}, {0x4, 0x1}, {0x1}, {0x1}, {0x1}, {0x4, 0x1}, {0x4}, {0x2}, {0x1}, {0x3, 0x1}, {0x2}, {0x0, 0x1}, {0x1, 0x1}, {0x0, 0x1}, {0x1}, {0x3}, {0x1}, {0x3}, {0x3, 0x1}, {0x4, 0x1}, {0x2, 0x1}, {0x2, 0x1}, {0x0, 0x1}, {0x5, 0x1}, {}, {0x3, 0x1}, {0x5, 0x1}, {0x4, 0x1}, {0x5}, {0x1}, {0x2, 0x1}, {0x2}, {0x4, 0x1}, {}, {0x2}, {0x2}, {0x3}], 0x1}}, @TCA_PEDIT_PARMS_EX={0xeb0, 0x4, {{{0x1, 0xffffffe0, 0x3, 0x81, 0x4}, 0x1, 0xcd, [{0x4, 0x10001, 0x6, 0x6, 0x0, 0x50}, {0xffff, 0xf149, 0x100, 0xfffffff7, 0x9, 0xa9d}, {0xa00000, 0x5, 0x10000, 0x8, 0xfffffff8, 0x8}, {0x9f, 0x3, 0x1, 0x5, 0x400, 0x7}, {0x9, 0x2, 0x7fffffff, 0x1, 0x1, 0x9}, {0x4, 0x6, 0x2d85134b, 0x5, 0x2, 0x2}]}, [{0x2, 0x200, 0xbc0, 0x6, 0xe2, 0xc51ee2ec}, {0x8000, 0x2, 0x80000000, 0x1, 0x8001}, {0xffff37b7, 0x8, 0x80000000, 0xc2, 0x21d, 0x7}, {0x1000, 0x200, 0x8001, 0xc669, 0x5, 0x11d5}, {0x8, 0x1, 0xffffffff, 0x4a5f, 0x1, 0x1}, {0x325, 0x4, 0x3f, 0xfff, 0x6, 0x7fff}, {0x7, 0x80000000, 0xfffffff9, 0x5a, 0xffff, 0x6}, {0x401, 0x7, 0x7ff, 0x2, 0x119, 0x401}, {0xfffffffa, 0x5, 0x4, 0x0, 0x1, 0x20000000}, {0x1, 0x7f, 0xfffffffd, 0x81, 0x6fe2, 0x8}, {0x80, 0xbe78, 0x0, 0x6, 0x0, 0x400}, {0x800, 0x3e4f03dd, 0x3, 0x3f, 0x200, 0x1}, {0x2, 0x1, 0x3, 0x0, 0x8, 0x401}, {0x3102, 0x5, 0x10001, 0x80, 0xffffff2d, 0x1f}, {0x7, 0x7, 0x8, 0x8a5, 0x6, 0x101}, {0x7, 0x1, 0x5, 0x3, 0x3, 0xfffff57e}, {0x2, 0x80000000, 0x0, 0x6, 0x400, 0x2}, {0x8, 0x1, 0x101, 0x9, 0x401, 0x8}, {0x0, 0x8, 0x6, 0x1, 0xffff, 0x7}, {0x4, 0x200, 0x100, 0x3, 0x20, 0x1ff}, {0x3, 0x9, 0x84, 0x2, 0x2, 0x3}, {0xfffffffd, 0x5e6, 0x7, 0x3, 0x6, 0x8001}, {0x80000000, 0xfffffffb, 0x2, 0x775f, 0x3, 0x9}, {0x7f, 0x81, 0x5, 0xfff, 0x40, 0x3}, {0xfffffffd, 0x1bc, 0x4, 0x20, 0x10001, 0x1}, {0xeada, 0xd4, 0x80000000, 0x2, 0x3, 0xff}, {0x29, 0x4, 0x0, 0x0, 0x1, 0x20}, {0x3, 0x3, 0x80, 0x4, 0x8000, 0x80}, {0xf855, 0x8, 0xfffffc01, 0x3, 0xa09, 0xfa}, {0x6, 0x1, 0xff, 0x3, 0x20, 0x401}, {0x3, 0x7ff, 0x81d8, 0x2, 0x2, 0x35c}, {0x9269, 0x6, 0xf6, 0x7f, 0x0, 0x1}, {0xffff8000, 0x1, 0x5, 0x7, 0x0, 0xff}, {0xfa5b, 0x9, 0xffff8000, 0x2, 0x1, 0x401}, {0x6, 0x10001, 0x3, 0xb013, 0x6, 0xe8}, {0x1f, 0x0, 0x6, 0x11, 0x99c7, 0x3}, {0xff, 0x18, 0x2, 0x10001, 0xff, 0x3f}, {0xe4bb, 0x8, 0x6e7a, 0x10001, 0x6c0, 0x401}, {0x3ff, 0x80000001, 0xf1, 0xfffffffd, 0x20000000, 0x101}, {0x70, 0x3, 0x0, 0x5, 0xe5, 0xffff}, {0x80000001, 0x4, 0xfef, 0xfb, 0x5, 0x40}, {0x101, 0x3, 0x9, 0x77, 0x2, 0x2}, {0x5, 0x7ff, 0x9, 0x0, 0xffffffc1, 0x8}, {0xf48e, 0x15000000, 0x7ff, 0x9, 0x800, 0xc37}, {0x8, 0x0, 0x9, 0xdd7d, 0x1, 0x6}, {0xff, 0x7, 0x1, 0x3, 0xc8, 0x2}, {0x5, 0x80000000, 0x40, 0x6, 0x2, 0x4}, {0x1, 0x1f, 0x101, 0x2, 0xfffffff8, 0x4}, {0x2, 0x80000000, 0xffffffa4, 0x401, 0x8, 0xffffff38}, {0x74, 0x8, 0x0, 0x0, 0xfffff444, 0x6}, {0x3, 0x7, 0x6, 0x7fffffff, 0x1}, {0xeee8, 0x9770, 0xfffffffc, 0x80000001, 0x4, 0x4}, {0x9d2, 0x800, 0x6, 0x0, 0x2, 0x6}, {0x9, 0x20, 0x3ff, 0x6, 0x2, 0x7}, {0x8, 0x7fffffff, 0xffffcf99, 0x0, 0x5, 0x34}, {0xffffff81, 0x80000000, 0x7, 0x4, 0x8001, 0x6}, {0x20, 0x8, 0x800, 0x800, 0x10001, 0x7}, {0x80000000, 0x7, 0x5, 0x9, 0xfff, 0x7fff0}, {0x4, 0x1, 0x7f, 0x8, 0x7, 0x10001}, {0x4b0, 0x7, 0x1, 0x8, 0x80, 0x40}, {0x10000, 0x4a1, 0x0, 0x3, 0x3089, 0xbb7}, {0x1000, 0x1457, 0x2, 0x0, 0xffffffff, 0x1}, {0x3, 0x4, 0x4, 0x1, 0x7a}, {0xffffff33, 0x9, 0x2, 0x230, 0x80000001, 0x10000}, {0x200, 0x4001, 0x2, 0x2, 0xe, 0x1993}, {0x10000, 0x8, 0x6, 0xd5b, 0x6}, {0x5, 0x2eaa8d6d, 0x2, 0x3, 0x7a, 0x8000}, {0x9, 0x8001, 0x5, 0x5, 0x101, 0xfffffffb}, {0x100, 0x10000, 0x9, 0x8, 0x5, 0x7}, {0x7ff, 0x7, 0x7fff, 0x7fff, 0x1000, 0x10001}, {0x9, 0x3, 0xffffff01, 0x8, 0x20, 0x9}, {0x40, 0x101, 0x80, 0x8, 0x80000000, 0x6}, {0x6, 0x9, 0x620, 0x4, 0x5d138}, {0xa91, 0x401, 0x40, 0x9, 0x3, 0x7}, {0x7, 0x10001, 0xfc81, 0x3, 0x4}, {0x9, 0x5, 0xfffffff8, 0x10000, 0x3, 0x5}, {0x2, 0x9, 0x7, 0x4, 0x7fffffff, 0xfffffff7}, {0x1, 0x127e0000, 0xf0c, 0x2, 0x8, 0x3}, {0xfffffffc, 0x149, 0xffffffff, 0xf219, 0x1, 0x7}, {0x40, 0xffff, 0x7ff, 0x9, 0x3ff, 0xc146}, {0x9, 0xe69a, 0x1, 0x7, 0x4}, {0x7, 0xffffff01, 0x1, 0x6, 0x5, 0xcb}, {0x8, 0xfff, 0x4, 0x9, 0x2, 0x6}, {0x40, 0x8001, 0x7f, 0x1, 0x3, 0x8}, {0x40, 0x4, 0x10000000, 0x7fff, 0x9, 0x7f}, {0x1, 0x7fffffff, 0x0, 0x3, 0x1, 0x218}, {0x2, 0x4, 0x1, 0x1, 0x6, 0x9}, {0x7, 0x401, 0x40, 0x1}, {0x7fff, 0x0, 0x4, 0x7, 0x1, 0x3}, {0x9, 0x9, 0x2, 0xb95, 0x9, 0x5f2}, {0x200, 0x9, 0x2, 0x0, 0x1, 0x4}, {0x3f, 0x6, 0x8, 0xa576, 0x100, 0xf}, {0x876, 0x7d, 0x8, 0x5, 0x6, 0x3}, {0x6, 0x3, 0x3ff, 0x2, 0xffffffff, 0x1}, {0x8000, 0x4, 0x1f, 0x7fffffff, 0x6, 0xfffff800}, {0x8, 0x80000001, 0x5, 0x0, 0x6, 0x20}, {0x8, 0x0, 0x7, 0x9, 0x1f, 0x6}, {0x0, 0x5f38, 0x7, 0x0, 0x0, 0x1}, {0x80000000, 0x1f, 0x7feb0000, 0x9, 0x4, 0xed}, {0x3, 0x80, 0x2, 0x9, 0x40, 0x81}, {0x1, 0x4, 0xfffff801, 0x0, 0x8, 0x4}, {0x8000, 0x7fff, 0x6, 0x1, 0x6, 0xe9f2}, {0xdceb, 0x14, 0x4, 0x6, 0x8, 0x400}, {0x401, 0x4, 0x80000000, 0xca, 0x2, 0x2}, {0x7, 0xb6df, 0xcb5d, 0x5, 0x4, 0x7}, {0x8001, 0x5, 0x101, 0x8, 0x6, 0xfff}, {0x2, 0x243, 0x10001, 0xff, 0x0, 0x7}, {0x9, 0x80000, 0x6cde, 0x5, 0x0, 0xb1}, {0x3f, 0x9, 0x5, 0x8, 0x8000, 0x3f}, {0x7, 0x200, 0x7, 0x9, 0xffff, 0x2}, {0x5, 0x9, 0x0, 0x6, 0x4, 0xd4ac}, {0x5, 0xbd4, 0x8, 0x390, 0x1}, {0x9, 0x0, 0x8, 0x8001, 0x2, 0x4}, {0x8, 0xffff, 0x412, 0x3, 0x10000, 0x1}, {0x4000, 0x8, 0x7979e58f, 0x7fff, 0x5, 0x7}, {0x20000000, 0x400, 0x7, 0x5, 0xedc, 0x6}, {0xfff, 0x5, 0xffffffff, 0x1f, 0x7fffffff, 0x68}, {0x9, 0x6, 0xffffffff, 0x9, 0xfff, 0x100}, {0x1, 0x20, 0x4, 0x5b9c, 0x0, 0x4}, {0xba, 0x7, 0x5, 0x401, 0xffff, 0x10000}, {0x3f, 0x0, 0xfff, 0x8, 0x10001, 0x72}, {0x86e2, 0x100, 0x80000001, 0x1f, 0x3733, 0x2}, {0x100, 0x1, 0x8, 0x10000, 0x8001, 0x9}, {0x4, 0xffffffff, 0x200, 0x101, 0x80000001, 0x4}, {0x24, 0x7ff, 0xde, 0x7, 0x24f, 0x650d}, {0x4, 0x7, 0x7, 0x8, 0x8, 0xaeb5}, {0x10001, 0x81, 0x0, 0x0, 0x0, 0x2}, {0x2, 0x9, 0x7fffffff, 0x7, 0x2, 0x9e}], [{0x4}, {0x1, 0x1}, {0x3, 0x1}, {0x1, 0x1}, {0x4, 0x1}, {0x5, 0x1}, {0x3}, {0x4}, {0x5}, {0x4}, {0x1}, {0x2, 0x1}, {0x1, 0x1}, {0x3, 0x1}, {0x0, 0x1}, {0x3}, {0x4, 0x1}, {0x3}, {0x2, 0x1}, {0x2, 0x1}, {0x0, 0x1}, {}, {0x5}, {0x5, 0x1}, {0x2}, {0x2}, {0x5}, {0x5}, {0x3, 0x1}, {0x3, 0x1}, {}, {0x4, 0x1}, {0x4, 0x1}, {0x3}, {0x5}, {0x6}, {0x2}, {0x4, 0x1}, {0x1}, {0x4, 0x1}, {0x1}, {0x2, 0x1}, {0x1}, {0x1}, {0x2, 0x1}, {0x5}, {0x0, 0x1}, {0x4}, {0x1, 0x1}, {0x3, 0x1}, {0x1}, {0x5}, {0x5}, {0x2, 0x1}, {0x0, 0x1}, {0x3, 0x1}, {0x2}, {0x1}, {0x2, 0x1}, {0x1}, {0x2, 0x1}, {0x3}, {0x2}, {0x2}, {0x4}, {0x0, 0x1}, {0x4, 0x1}, {0x2}, {0x2}, {0x2, 0x1}, {0x5, 0x1}, {0x5}, {0x0, 0x1}, {0x14dd08be2558e6d5, 0x1}, {0x5}, {0x0, 0x1}, {0x2}, {0x1, 0x1}, {0x1, 0x1}, {0x1, 0x1}, {0x0, 0x1}, {0x0, 0x1}, {0x5, 0x1}, {0x3}, {0x2}, {}, {0x3}, {0x3}, {0x1, 0x1}, {0x3, 0x1}, {0x0, 0x1}, {0x5, 0x1}, {0x5}, {0x4}, {0x4}, {0x5}, {}, {0x1, 0x8b41c0719befa2e5}, {0x4, 0x1}, {0x1, 0x1}, {0x4}, {}, {0x0, 0x1}, {0x3, 0x1}, {}, {0x0, 0x1}, {0x3}, {0x4, 0x1}, {0x3}, {0x4, 0x1}, {0x1, 0x1}, {0x1}, {0x1, 0x1}, {0x5, 0x1}, {0x0, 0x1}, {0x3}, {0x4, 0x1}, {0x6}, {0x4, 0x1}, {0x1}, {0x3, 0x1}, {0x2}, {0x0, 0x1}, {0x5, 0x1}, {0x2}, {0x0, 0x1}, {0x3}], 0x1}}, @TCA_PEDIT_PARMS={0xec8, 0x2, {{{0x115, 0x20, 0x8, 0xc2e0fae, 0x7ff}, 0x7, 0xff, [{0x2, 0x5, 0x2, 0x2, 0x8, 0x8}, {0x1, 0x2, 0x8, 0x8, 0xa74c, 0x1}, {0x8e1, 0x3, 0x800, 0x1, 0x0, 0x3f}, {0x9d3d, 0x4, 0x1b3139b0, 0x7, 0x3f, 0xe234}, {0x7, 0x8, 0x5, 0x0, 0xb1, 0x1}, {0x4, 0x8001, 0x1, 0x3, 0x200, 0x3ff}, {0x0, 0x5, 0x8, 0x3, 0x7}]}, [{0x101, 0x7, 0x7, 0x0, 0xfffffffd}, {0xff, 0x80000000, 0x1, 0x14, 0x1, 0x1ff}, {0xef, 0x2, 0x5, 0x2, 0x9, 0x2}, {0x4, 0x1, 0x76de, 0x2, 0x10001, 0x4}, {0xfffffffb, 0x3, 0x8e1, 0xfff, 0x2, 0x8}, {0x4, 0x1, 0x101, 0x3f, 0x192, 0x3}, {0x10000, 0x2, 0x80000000, 0x6, 0xf3be, 0x4}, {0x8001, 0x464, 0x0, 0xff, 0x1, 0xffffffff}, {0x80000000, 0x1, 0xffff0000, 0x8, 0x8, 0xf}, {0x0, 0x10000000, 0x200, 0x6, 0xcb0, 0x6}, {0x8, 0x1d6, 0x3, 0x10000, 0x6cfdfb12, 0x1ff}, {0xef, 0xfffffff9, 0x101, 0x100, 0x1, 0x15327246}, {0x38442f51, 0x3, 0x9, 0x8001, 0x6, 0x986}, {0x4, 0x65c, 0x8, 0xfdc, 0x81, 0xffff}, {0x3, 0x9, 0x2, 0x200, 0x1, 0x4}, {0x800, 0x1, 0x200, 0x0, 0x1, 0x56}, {0x6, 0x7, 0x5, 0x6, 0x3, 0x80000000}, {0x7ff, 0x3, 0x7f, 0x80000001, 0x3, 0x311}, {0x1, 0x2, 0x9, 0xfffffffc, 0x8}, {0x8, 0x9, 0x9, 0x4, 0x8, 0xffffffff}, {0x3, 0x9, 0x6, 0x200, 0x3f7b, 0x80000000}, {0x3f, 0x200, 0x1000, 0x1f, 0x4, 0xc12}, {0x14e3, 0x1, 0x4, 0x0, 0x6}, {0x3, 0x0, 0x9, 0x6, 0x0, 0x577c}, {0x69a, 0x4, 0x5, 0x4, 0x7, 0x9}, {0x7ff, 0x661e, 0x9, 0x352d, 0x7, 0x65e}, {0xf04, 0x5, 0x1a, 0x0, 0x101, 0x1}, {0x2, 0xffff, 0x7, 0x8, 0x13b, 0x7ff0}, {0x80000000, 0x290d, 0x9, 0x10000, 0x927, 0x7fff}, {0x5, 0x401, 0xf1, 0xffffffff, 0x4, 0xc21}, {0x8e6, 0x8, 0xfffffff7, 0x0, 0x7b40800, 0x9}, {0x9, 0x800, 0x60f, 0x4, 0x8, 0x800}, {0x36, 0x2, 0xde, 0x5, 0x7, 0x101}, {0x3, 0x1, 0x268824a4, 0x6, 0xff, 0x4}, {0x4, 0x22, 0x0, 0x8000, 0xffffffde, 0x661d}, {0x0, 0x895ba83, 0x1, 0x80, 0x80000000, 0x3f}, {0x5, 0x0, 0x5, 0x80000000, 0x800}, {0x8, 0x1, 0x7f, 0xffffffff, 0x10000, 0x1e}, {0x400, 0x9a, 0x657, 0x0, 0xc00, 0x5ac}, {0x0, 0x0, 0x1, 0x800, 0x200, 0x6}, {0xfff, 0x6, 0xed, 0x101, 0xffffffff, 0x80}, {0x2, 0x3, 0x92, 0x3, 0x3, 0x7}, {0x3a, 0x0, 0x4, 0x2c0, 0x8, 0x80000000}, {0x1, 0x9, 0x2, 0x7f, 0x7, 0x1}, {0x7, 0x914, 0x4, 0x8001, 0x80, 0x7}, {0x2, 0x40, 0x0, 0x1000, 0x2, 0x7}, {0x3, 0x5, 0x7, 0x0, 0x6, 0x7f}, {0x81, 0x4004, 0x10001, 0x8, 0x80000000, 0x6}, {0x9, 0xca1, 0x6c916315, 0x81, 0x2, 0xffffffff}, {0x3ff, 0x6, 0xff, 0x3, 0x9, 0x80000001}, {0x6, 0x20, 0xffff8000, 0x7fff, 0x2df6e3fa, 0x80}, {0x6, 0x80, 0x7d, 0x0, 0x18, 0x5}, {0x5, 0xffffffbf, 0x1f, 0x0, 0x101, 0xfffffffc}, {0xfff, 0x9, 0x5, 0x4, 0x800, 0x4e33}, {0x10000, 0x400, 0x400, 0xffff, 0x5, 0x79}, {0x7, 0xfffffffd, 0x9, 0x3, 0x1, 0x4}, {0x1b95, 0x7, 0xffffffc0, 0xed2, 0x1, 0xd3}, {0x0, 0xfffffffe, 0x6, 0x401, 0x7ff, 0x6}, {0x2, 0x6, 0x7, 0x1, 0x9, 0x1f}, {0xfffffffe, 0xfffffc00, 0x400, 0xffffffff, 0x4, 0x1}, {0x1000, 0x0, 0x3, 0x6, 0x1f, 0x7}, {0x3, 0x2, 0x2, 0x1, 0x3, 0x9}, {0x4, 0x400, 0x847, 0x9, 0x0, 0x20}, {0x5, 0xffff, 0x8000, 0x9, 0x4, 0x6}, {0x5, 0xfe, 0xfffffff9, 0x5, 0x7fff, 0x3888a8fa}, {0x7, 0x80000001, 0xb89f, 0xfffffff9, 0x5, 0x4}, {0x9, 0x80000001, 0x8001, 0x4, 0x80000001, 0x80}, {0xba53, 0x2, 0x3f, 0x0, 0x4, 0x6}, {0xffff, 0x24, 0x9, 0xb9dc, 0x1, 0x587e}, {0x17e, 0x20, 0x3, 0x1, 0x5280, 0x8000}, {0xfffffff7, 0x2, 0x2, 0x9, 0x7, 0xde}, {0x0, 0x8, 0x1, 0x577, 0xd4b, 0x100}, {0xe106, 0x6, 0x1, 0x101, 0x9, 0x4}, {0x8001, 0x3f, 0x3, 0x3, 0x6, 0x9}, {0x287, 0x6, 0x8, 0x8, 0x5, 0x1}, {0xd7, 0xe8aa294, 0xffff, 0x99db, 0x7}, {0xd1a, 0xcf, 0x400, 0x8000, 0x2d93, 0x9}, {0xfff, 0x3, 0x0, 0x5, 0x0, 0x80}, {0x617, 0x12, 0x101000, 0x40, 0x1}, {0x4, 0x5, 0xfffffffe, 0x80000001, 0x4, 0xffffffff}, {0x2, 0x6, 0x0, 0x0, 0x5, 0x7fffffff}, {0xff, 0x73, 0x0, 0x1, 0x9, 0x2f}, {0x5, 0x2, 0x9, 0x4, 0x8, 0x8}, {0x3, 0x8, 0x4, 0x2, 0x7, 0xfffffffa}, {0x4, 0xee2, 0x7fff, 0x4, 0x8}, {0x1, 0x291, 0x40, 0x7, 0x269ff8bd, 0x20}, {0x3, 0x8000, 0x3, 0xffff, 0x1, 0x4}, {0x5, 0x3de, 0x40, 0xffffffff, 0x22, 0x3}, {0x7fffffff, 0x6, 0x6, 0x5d, 0x6a, 0x9}, {0x5, 0x6, 0x7, 0x4}, {0xfffffff7, 0x2, 0xfff, 0x4b3f5639, 0x2, 0x1e4}, {0x7fffffff, 0x9, 0x7, 0x8, 0xfffffffe, 0x7fffffff}, {0x80000001, 0x5, 0x4cee6da8, 0x8, 0xfffffffe, 0xf2a}, {0xe6a, 0x247a, 0x40, 0x8, 0x8, 0xffffffff}, {0x7, 0x1800000, 0x800, 0x9, 0x8, 0x2}, {0x6, 0xf7ab, 0x9, 0xffffffa6, 0x2, 0x85b46ed}, {0x4, 0x1, 0xffff104b, 0x5, 0x80000000, 0x5}, {0x7, 0x1, 0x4, 0x6, 0x1, 0x81}, {0xffff7caf, 0xffff, 0x3ff, 0x74f, 0x12, 0x200}, {0x8, 0x70f8, 0x5, 0x7fffffff, 0x3ff, 0xa3}, {0x64, 0x7, 0x401, 0x3, 0x8001, 0x4}, {0xec0, 0x0, 0x1, 0x0, 0x400, 0x1b1}, {0x2, 0x5, 0x68, 0x1ff, 0x40, 0xffda}, {0x6, 0x6, 0x6, 0x10000, 0xffffffff, 0xfffffffd}, {0xf3bc, 0xdb0, 0x6, 0x0, 0xfffffe01, 0x7}, {0xff, 0x36c, 0x7, 0x9, 0x8, 0x7fd2}, {0xe3, 0xffffffff, 0x2, 0x8, 0x1, 0x9}, {0x2040000, 0x6, 0xffff, 0x4, 0xffff2e48, 0x81}, {0x8, 0xa78, 0x9, 0x1, 0x401, 0xc}, {0xfffffffd, 0x6, 0x8, 0x7, 0x9, 0xad}, {0x8, 0x0, 0x6, 0x7fffffff, 0x5, 0x80000001}, {0x2, 0x1ff, 0x0, 0x58d7, 0xfffffff9, 0x8}, {0xffffffff, 0x7, 0x6, 0x7, 0x4b6, 0x2}, {0x2, 0x9, 0x9, 0xfffffffe, 0x7ff, 0x1ff}, {0x1, 0x3, 0x7, 0x1000, 0x9, 0xffffffff}, {0x2, 0x2, 0x6, 0xc278, 0x8, 0x200}, {0x4, 0x7, 0x200, 0xfffff044, 0x40, 0x4a}, {0x400, 0x7, 0x2, 0x4, 0xfff, 0x80}, {0x8000, 0xf5c6, 0x7, 0x5, 0x4, 0xfff}, {0x7f, 0x7, 0x1ff, 0x5, 0x5, 0x101}, {0x3, 0x139, 0xfffffff7, 0x95, 0x1000}, {0x0, 0xffffffff, 0xff, 0x0, 0x658, 0x400}, {0x1, 0x4, 0xfffffff9, 0x4, 0x1, 0x83}, {0x2, 0x0, 0x243, 0x8000, 0x7, 0xfff}, {0xffffffff, 0x2, 0x51, 0x7, 0x800, 0x4}, {0x2, 0x6dc6, 0x3, 0xfff, 0x10000, 0xa6}, {0x5, 0x6f112dcf, 0x8000, 0x4, 0x40, 0x27ed}, {0x7, 0x1, 0x3, 0x3, 0x6, 0x70000}], [{0x4}, {0x1}, {0x5}, {0x3}, {0x2}, {0x1}, {0x4, 0x1}, {0x2, 0x1}, {0x4, 0x1}, {0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x1}, {0x5, 0x1}, {0x2}, {0x4}, {0xaaae7d728c1de93f}, {0x2, 0x1}, {0x5, 0x1}, {0x1}, {0x6, 0x1}, {0x2}, {0x3, 0x1}, {0x1, 0x1}, {0x4, 0x1}, {0x2}, {0x4}, {0x5}, {0x0, 0x1}, {0x3, 0x1}, {0x5}, {0x4}, {0x3, 0x2}, {0x3, 0x1}, {0x1}, {0x5}, {0x4}, {0x1}, {0x4, 0x1}, {0x2, 0x1}, {0x3, 0x1}, {0x0, 0x1}, {}, {0x3, 0x1}, {0x5, 0x1}, {0x3, 0x1}, {0x1, 0x1}, {0x1, 0x1}, {0x0, 0x1}, {0x1}, {0x2, 0x1}, {0x1, 0x1}, {0x2, 0x1}, {0x4}, {0x4, 0x1}, {0x3}, {0x2, 0x1}, {0x3, 0x1}, {0x1, 0x1}, {}, {0x0, 0x1}, {}, {0x5}, {0x4}, {0x3, 0x1}, {0x2, 0x1}, {0x2}, {0x7, 0x1}, {0x3}, {0x3, 0x1}, {0x3, 0x1}, {0x2, 0x1}, {0x2, 0x1}, {0x3}, {0x2}, {0x3, 0x1}, {0x4}, {0x4}, {0x1, 0x1}, {0x1}, {0x2, 0x1}, {}, {}, {0x3, 0x1}, {0x3}, {0x5}, {0x0, 0x1}, {0x7, 0x1}, {0x4, 0x1}, {0x2}, {0x1, 0x1}, {0x2, 0x1}, {0x5, 0x1}, {0xfe535fb4f5412957, 0x1}, {0x4}, {}, {0x5}, {0x1, 0x1}, {0x0, 0x1}, {0x4, 0x1}, {0x4, 0x1}, {0x3, 0x1}, {0x0, 0x1}, {0x5, 0x1}, {0x1, 0x1}, {0x2}, {0x3, 0x1}, {0x1, 0xb9e3fbc8806a18ed}, {0x4, 0x1}, {0x4}, {0x3}, {0x4, 0x1}, {0x4, 0x1}, {0x4, 0x1}, {0x2}, {0x0, 0x1}, {0x4, 0x1}, {0x1, 0x1}, {0x0, 0x1}, {0x2, 0x1}, {0x1, 0x1}, {0x3, 0x1}, {}, {0x4}, {0x3}, {}, {0x5}], 0x1}}]}, {0x46, 0x6, "891a53b030e0f8340be1b6359e19d71566528f76031826760ecde4d3a5a18a7eda8aa95b00fb027c18107042b289dc8faa3d07a863ccae19ec4bf44fa0cb89008506"}, {0xc, 0x7, {0x0, 0x1}}, {0xc, 0x8, {0x0, 0x2}}}}, @m_connmark={0x224, 0x5, 0x0, 0x0, {{0xd}, {0x100, 0x2, 0x0, 0x1, [@TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x1e, 0x10000, 0x1, 0x40000000, 0x3ff}, 0xfc3e}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x7, 0x57, 0x0, 0x7f, 0xf7}, 0x401}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0xbfe1, 0x5, 0xffffffffffffffff, 0x3ff, 0x60f}, 0x3f}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x100, 0x6, 0x10000000, 0x7fff, 0x4}, 0x699}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x0, 0x3, 0x20000017, 0x7, 0xffc00000}}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x8, 0x5, 0x10000000, 0x7fff, 0x81}}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x5, 0xe6, 0x5, 0xc48e, 0xf3}, 0x1}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x7, 0x6, 0x20000000, 0x7, 0x57cc}, 0x80}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x3f, 0x1, 0x20000000, 0x800, 0x9}, 0x8}}]}, {0xf6, 0x6, "6e148e3b328c0c8a3c53fa48633e8de92527282cc6b2cd594b7cbcb6288cbca05e9c11bc6d3b159e7c96efa3028e3c798200ff283755c15b4a26bb06418b133da1bd22e2b1234d5997ccbf51025c21bd986548205b8c4dc36a03a13199da3286a031f5bb65dc1da4a9aa3236481c478e4ff38962a3fffdf0218396ee97bc1bd869324938eebffa742a1155c5d4f95c6e654efe94f2244149330541c5a001f040948d67df8359657625c1ae95da3ad351c120b799a408b18b681e7b84a967bc2af7ca1d8f35de16b72936839aa1840f396c8f72d413eb11b0a4dc043c24ca7cfa6285e6cb0aa2ddd8067c35f0e09cb102ad3c"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x3, 0x2}}}}, @m_ct={0x100, 0xa, 0x0, 0x0, {{0x7}, {0x4c, 0x2, 0x0, 0x1, [@TCA_CT_NAT_IPV4_MAX={0x8, 0xa, @multicast2}, @TCA_CT_NAT_IPV4_MAX={0x8, 0xa, @multicast1}, @TCA_CT_LABELS={0x14, 0x7, "5c05f20bf3c58c5d428f38fdd3449d28"}, @TCA_CT_NAT_PORT_MAX={0x6, 0xe, 0x4e21}, @TCA_CT_LABELS_MASK={0x14, 0x8, "48e82a11893e46e41c042a0542512091"}, @TCA_CT_NAT_PORT_MAX={0x6, 0xe, 0x4e23}]}, {0x8f, 0x6, "1302ba234c22011582e2bd680c0903474034f656c6339faf61ca108e44dab50e0894e548b223881f6f16b4f00af383b0440272c12b9ad48e6e65babccf18932c2b51314ec292d454c268ae447235c3eb70d8dcf1be35932d2d330cffe04601e1c8fc2875ef0ed435610aa6ad04dee460ee2b65615a3f85198045c6d827b590ffa0cf6a7abaa139241886bc"}, {0xc}, {0xc}}}, @m_police={0x11a8, 0x2, 0x0, 0x0, {{0xb}, {0x10f8, 0x2, 0x0, 0x1, [[@TCA_POLICE_RATE64={0xc, 0x8, 0xb1}], [@TCA_POLICE_PEAKRATE64={0xc, 0x9, 0x1}, @TCA_POLICE_PEAKRATE={0x404, 0x3, [0xfffffffd, 0x8000, 0x1, 0x2, 0x2, 0x8000, 0x1ff, 0x4, 0xce, 0x0, 0xf19c, 0xffffffc0, 0x1ff, 0x4b, 0x3ff, 0x80000001, 0x401, 0xfffffff9, 0x60a, 0x7f, 0x3ff, 0x8b, 0x5, 0x4082764a, 0x8000000, 0x0, 0x1, 0x6, 0x48a1, 0xffff, 0x1, 0xfffff800, 0x7, 0x0, 0x8, 0x2, 0xfffffffa, 0x9, 0xee, 0xdc63, 0x80, 0x6, 0x6, 0x1, 0x20, 0xfffff801, 0xffff, 0x2, 0x1, 0x8000, 0x1000, 0x7, 0x1, 0x8, 0x2a7, 0xc0000000, 0x2, 0x4, 0x8001, 0xec, 0x5, 0xf7, 0x5, 0x3ff, 0x4, 0x80000000, 0xffffffff, 0x85a4, 0xfe, 0x2, 0x1f, 0x1, 0x2, 0x0, 0x8, 0x7, 0xfff, 0x0, 0x2, 0x5c799300, 0x5, 0x1f, 0x7, 0x7, 0xbe2d, 0x7, 0x1, 0x0, 0x3, 0x1, 0x8000, 0x1000, 0x100, 0x1, 0x458b, 0x400, 0xffff0000, 0x3f, 0x1ff, 0x8003, 0x4, 0x200, 0x0, 0x9, 0xffff8001, 0x8000, 0x2, 0x7ab, 0x81, 0x8, 0x1000, 0x91, 0x5, 0x0, 0x65bc, 0x198, 0x3, 0xff, 0xaad6, 0x20, 0x40, 0x3, 0x100, 0x8f, 0x5, 0x4e9, 0x6, 0x0, 0x2, 0x1, 0x1, 0x5, 0xf8b8, 0xffffaa7d, 0x80, 0x998c, 0x3f, 0x4, 0xfff, 0x6, 0xfffffffa, 0x4, 0x0, 0xfffffc01, 0x1, 0x7, 0x2, 0x6, 0xa3, 0x8, 0x401, 0x1, 0x400, 0xffff, 0x7, 0x3, 0x3, 0x100, 0x6, 0x7ff, 0x918d, 0x10000, 0x3, 0x6, 0x7, 0x400, 0x7fffffff, 0xfffffff9, 0x0, 0xfffff185, 0x1, 0x3, 0x4, 0x12, 0x7, 0x6ea, 0xcb, 0x3, 0xe7, 0x9, 0x9, 0x633d, 0x5, 0x81, 0x1, 0x200, 0xe995, 0x3ff, 0x7fffffff, 0x9, 0x9a, 0x6, 0x4, 0x200, 0x3, 0x100, 0x8, 0x8001, 0xfffffffd, 0x0, 0x1, 0x0, 0x1, 0x20, 0x2, 0x49e, 0x2, 0x6, 0x0, 0x80000001, 0x5, 0x7, 0x4, 0x3ff, 0x0, 0x7fff, 0x2, 0x8635, 0x0, 0x2, 0x40, 0xfffffffd, 0x40, 0x4, 0x4, 0x1, 0xffff, 0x4, 0x9fd, 0x8, 0x53c, 0x10001, 0x0, 0x1, 0xfffffffc, 0x1f, 0x0, 0x3, 0x2, 0x3ff, 0xff, 0x90, 0x1, 0x81, 0x42, 0xffffffff, 0x7, 0x5, 0x5, 0x6, 0x100, 0x7ff, 0xffff, 0x5, 0x5, 0x9]}, @TCA_POLICE_RESULT={0x8, 0x5, 0x1f}, @TCA_POLICE_AVRATE={0x8, 0x4, 0x7}, @TCA_POLICE_TBF={0x3c, 0x1, {0x5, 0xfffffffffffffff8, 0x5, 0x6, 0x0, {0x2, 0x2, 0x8, 0x4, 0x81, 0x1}, {0x0, 0x0, 0x3ff, 0x1, 0x3, 0x80}, 0x2, 0x5b7b, 0x7}}, @TCA_POLICE_PEAKRATE={0x404, 0x3, [0x985, 0x5, 0x401, 0x1, 0xad, 0x5, 0xffffcfcb, 0x7ff, 0xffff, 0x8001, 0x5, 0x7fffffff, 0x5, 0x6, 0x5, 0x876, 0x100000, 0x7ff, 0x0, 0x80, 0x6, 0x10000, 0x2, 0x3, 0x8994, 0xffff7fff, 0xa9, 0x80000001, 0xffffffff, 0x6, 0x3, 0x4, 0x9, 0x8, 0x1, 0x2, 0x1000, 0x1, 0x0, 0xfffffff8, 0x0, 0xff, 0x0, 0x9, 0x1, 0x1e, 0x7, 0x10001, 0x8c, 0xa31, 0x7, 0x4, 0x0, 0x6, 0x9, 0x3, 0x3, 0x4c00, 0x7fff, 0xe6f2, 0x9, 0x2, 0x40, 0x5, 0x4, 0x10001, 0x625, 0x4d8, 0x3f, 0xfffffffa, 0x7, 0x3ff, 0x8, 0xfffffffb, 0x7, 0x1000, 0x1ff, 0x3ac0a311, 0x40369757, 0x4, 0x0, 0x3ff, 0x0, 0x80, 0x1ff, 0x6, 0x0, 0x80, 0x6, 0x0, 0x8000, 0x3f, 0x4, 0x660, 0x20, 0x3, 0x8000, 0x7ff, 0x4, 0x2, 0x7, 0x7, 0x80, 0x5, 0x80000001, 0x3, 0x8, 0x0, 0x1, 0x80, 0x5, 0x6, 0x100, 0xdd10, 0x6, 0x158, 0x2, 0x14a, 0x6f, 0x2, 0x407, 0x5, 0x7fffffff, 0x20, 0x9, 0x7f, 0x20, 0x7, 0x8, 0x6, 0x8, 0x9, 0xa8a4, 0x101, 0x6, 0x3ad4, 0xfffffff7, 0x7, 0x8, 0x7fff, 0x8001, 0x6, 0xddb, 0x401, 0x1000, 0x7, 0x79, 0x5ca, 0x5, 0x3, 0x2, 0x2, 0xb1, 0x9, 0x6, 0x5, 0x80000001, 0x2, 0x2, 0x200, 0x9, 0x800, 0x10001, 0x7, 0x5ba2ffdc, 0x7ff, 0x6, 0xfffffc00, 0x3, 0x26, 0xc, 0x1f, 0x8b, 0x400, 0x401, 0x1ff, 0x7ff, 0xff, 0x1, 0x2, 0x80000001, 0x9, 0x7, 0x4, 0x7, 0x80000000, 0x2, 0x3, 0x200, 0xfff, 0x7, 0x1, 0x81, 0x8, 0x4, 0x80000000, 0x81, 0x4, 0x1, 0x6, 0x0, 0x9, 0xffff8000, 0x7fff, 0x100, 0x5, 0x7, 0x6c4, 0x7, 0x1, 0x8, 0x1000000, 0x100, 0x7d, 0x6, 0x8, 0x7, 0x5, 0x3, 0x7fffffff, 0x0, 0xc7, 0x2, 0x8046, 0xe5, 0x7ff, 0x1f, 0x401, 0x3e, 0x5, 0x8001, 0x1fb, 0xb64, 0x7, 0x7fffffff, 0x909b, 0x80000001, 0xfffff676, 0x5, 0x0, 0x3ff, 0x2, 0x1, 0x8c9a, 0xffffffff, 0x6, 0x9, 0x4, 0x0, 0xd35, 0x9, 0x2, 0x4, 0x5, 0x5fc, 0x2d]}, @TCA_POLICE_RATE={0x404, 0x2, [0x4, 0x400, 0x4, 0x9, 0x3, 0x7, 0x7f, 0x0, 0xc2, 0xa, 0x5, 0x20, 0x5, 0x2, 0x4687, 0x1, 0x5, 0x6, 0xfffffffa, 0x1, 0x5, 0x5, 0x2, 0x1, 0x7, 0x2, 0xd1a, 0x5, 0x8, 0xff, 0x4, 0x80, 0x3, 0x2, 0xffff, 0x20, 0xdb4, 0x3, 0x5, 0x7, 0x7, 0x6, 0x0, 0x40, 0x3, 0x3, 0x1a5c020b, 0x2, 0x401, 0x2, 0x2, 0xfffffff7, 0x4, 0xf3e, 0x7, 0x80, 0x5, 0x6, 0xfffffff9, 0x8, 0x7, 0x7fff, 0x1, 0x80, 0x8, 0x6, 0x8, 0x1, 0x1, 0x10001, 0x9, 0x300000, 0xfffffff7, 0x0, 0x8, 0x20, 0x6, 0x401, 0x868b, 0x8096, 0x644, 0x5, 0x5, 0x81, 0x5, 0x7fffffff, 0x100, 0xffffffff, 0x6, 0x3, 0x0, 0x61, 0x7fffffff, 0x0, 0x81, 0xfffffff8, 0xffff8000, 0x20, 0x1000, 0x8, 0x1, 0x6, 0x0, 0xe6, 0x2, 0x7fffffff, 0xe0c, 0x7fffffff, 0x8120, 0x1000, 0xeea, 0x6, 0x81, 0x6, 0x7, 0x800, 0x5, 0x17, 0x2, 0x3, 0xa9, 0xae47, 0x6803, 0x40, 0x9, 0x9, 0x4, 0x10000, 0xfe2, 0x4, 0x55, 0x1, 0x7ff, 0x91, 0xb04, 0x9, 0x9, 0x1b30eb64, 0x2, 0x7, 0x0, 0x1f, 0x2, 0xbbe4, 0x3, 0xfffffffc, 0x9, 0x80, 0x0, 0xb4, 0x7, 0x80, 0x1, 0x80000000, 0x993, 0x5, 0x5, 0x81, 0x3, 0x5, 0x9, 0x7fff, 0x1, 0x1f, 0x7, 0x3, 0x6, 0x3f, 0xb5, 0x9, 0xae, 0x2, 0x401, 0x55e, 0xfffffff9, 0x200, 0xfffffff7, 0x1, 0xb2, 0x3f3, 0x7fffffff, 0x8, 0xc982, 0x2, 0xd0a6, 0x3, 0x10001, 0x87, 0x401, 0x5c4996e7, 0xb57f, 0x1200000, 0x134f495b, 0x7, 0x5, 0xe05c, 0x896, 0x89, 0x7f, 0x9923, 0x0, 0x2, 0x2, 0x6, 0x535, 0xffffff9d, 0x1, 0x3, 0x0, 0x7, 0x3dfdb969, 0x5, 0xff, 0x80000001, 0x9, 0x5cf, 0x4, 0x80, 0x7ff, 0x4, 0x9, 0x7, 0x2, 0x9, 0xfff, 0x0, 0x721a, 0xc19, 0x4, 0x5b07, 0x1, 0x8001, 0x4, 0x9, 0x7, 0x3, 0x10000, 0x8001, 0x10001, 0x149, 0x8, 0x7fffffff, 0x6c, 0xffffffff, 0x1dab, 0x4, 0x3f, 0x1, 0x2, 0x5, 0xbe4, 0x0, 0x9, 0x101, 0xffff7fff, 0xffffffff]}], [@TCA_POLICE_PEAKRATE64={0xc, 0x9, 0x8}, @TCA_POLICE_AVRATE={0x8, 0x4, 0x9}], [@TCA_POLICE_AVRATE={0x8, 0x4, 0x2}, @TCA_POLICE_RESULT={0x8, 0x5, 0xa511}, @TCA_POLICE_TBF={0x3c, 0x1, {0xfff, 0x10000000, 0x3, 0x80000000, 0x81, {0x9, 0x2, 0x1, 0x3, 0x8, 0x1}, {0x9, 0x0, 0x1, 0xa7e0, 0x3f, 0xcf4}, 0x3, 0x6, 0x9}}, @TCA_POLICE_RATE={0x404, 0x2, [0x4, 0xfbc4, 0x7, 0xede, 0x0, 0xffffffff, 0x4, 0x2, 0x7ff, 0xd76, 0x81, 0x0, 0x1, 0x8, 0x8, 0x1, 0x0, 0x10001, 0x401, 0x4, 0x0, 0x1, 0x4cd, 0x4, 0x101, 0x10000, 0xfe000000, 0x2a4, 0x10001, 0x0, 0x2, 0x2, 0x40, 0x48, 0xef0c, 0x400, 0x7, 0x9, 0x2, 0x8f, 0x8, 0x1, 0x4, 0x3ff, 0x692, 0x8, 0x20, 0x10000, 0x7, 0x9, 0x2, 0x7fff, 0x10001, 0x3ff, 0x1ff, 0x8, 0x0, 0x80000001, 0x5, 0xfff, 0x0, 0x7ff, 0x2, 0x0, 0x2, 0x8, 0x5, 0x5, 0xaf31, 0x80, 0x8, 0xf8, 0xfffffffc, 0x5, 0x8, 0x6, 0x5, 0xfffffff8, 0x40000, 0x3ff, 0x5b045cbe, 0x5abc8127, 0x3, 0x9, 0x10001, 0xffffb8dc, 0x4, 0x0, 0x600b, 0x5, 0x1, 0x400, 0x20, 0x1000, 0x8, 0x800, 0x0, 0x9, 0x400, 0xce8, 0x7, 0x10001, 0x2e, 0xfffffffc, 0xffffffff, 0x8, 0x4, 0x1, 0xffff0001, 0xac, 0x5e4e, 0x800, 0x3, 0xdd2, 0x0, 0x400, 0x1, 0x1f, 0x4, 0x0, 0x80, 0xcbfd, 0x80000000, 0x6, 0x7, 0x7f, 0xab, 0xffff, 0x200, 0x36a389d7, 0x7, 0x7, 0x8, 0x0, 0x10001, 0x80, 0x2, 0x1, 0xffffffff, 0x6, 0x0, 0x2, 0x200, 0x5, 0x4, 0x65, 0x5e4, 0x2, 0x7, 0x0, 0xfffffffc, 0x5, 0x47, 0x7, 0xeec, 0xda, 0xff, 0x1f, 0x2, 0x4000000, 0x3, 0x8001, 0x0, 0x9, 0x4fd7, 0x5, 0x4, 0x0, 0x80, 0x884, 0x80000001, 0x6, 0x400, 0x2, 0x6, 0x7ff, 0x6, 0x5, 0x6, 0xfff, 0x8, 0x9, 0x7, 0x6a4e, 0x0, 0xfffffffe, 0x7fffffff, 0x5feb, 0x100000, 0x9, 0x7, 0x4, 0x8503, 0x0, 0x0, 0x20, 0x5, 0x4, 0x7, 0x7f, 0x0, 0x2, 0x100, 0xdfd, 0x6c, 0x8, 0x0, 0x5, 0x1000, 0x3, 0x8, 0x8001, 0x0, 0x7fff, 0xff, 0x81, 0xffffffff, 0x5, 0x200, 0x0, 0x81, 0x2, 0x2, 0x4, 0x101, 0x39d0, 0x40, 0x7, 0x0, 0x10001, 0x200, 0x3, 0x3f, 0x8, 0x1, 0x8, 0xc509, 0x800, 0x5217, 0xfffffff7, 0x8, 0xc105, 0x4, 0x10001, 0x7, 0x1dee8000, 0x8, 0x7ff, 0xfff, 0x7, 0x3, 0xfffffffc, 0x80, 0x3c74, 0x0, 0x9]}, @TCA_POLICE_RESULT={0x8, 0x5, 0x7}, @TCA_POLICE_PEAKRATE64={0xc, 0x9, 0x8}, @TCA_POLICE_PEAKRATE64={0xc, 0x9, 0x8}]]}, {0x88, 0x6, "e066d98e0e57ed6f091beba509ccdd69aabcceebf9097d66075b0e1b821da64ca9cf0d0025643b056537ccf4af74ac8d761f12969a420bca22271b579b1c22db036f1e1756e9f69cbffbaa558062341a31e2b651275af48b56c309c8cad03f7858d7adb9dd5bb8f17c6f602988c3d68ba52f385f42eee7db3d91e847e31152ef4c1c1833"}, {0xc, 0x7, {0x1}}, {0xc, 0x8, {0x0, 0x3}}}}, @m_simple={0xbc, 0x16, 0x0, 0x0, {{0xb}, {0x24, 0x2, 0x0, 0x1, [@TCA_DEF_DATA={0x8, 0x3, 'wg0\x00'}, @TCA_DEF_PARMS={0x18, 0x2, {0x5, 0x1ff, 0x5, 0x3ff, 0x1}}]}, {0x6d, 0x6, "f1742e5c41b6345cf10f2876ceed239c1e193628b87814acc88ba5f38d5c2ec5318c0d0d01b01a6bdefc58ce61ca24081c0da3a8198f193bf373e2dd3b099ac53222a7b010dcbba5b2bf8f18608c2ba02da745307856ea16497c49a3fa5863a392316d737e9364d7f3"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x2, 0x2}}}}, @m_bpf={0xc0, 0x11, 0x0, 0x0, {{0x8}, {0x1c, 0x2, 0x0, 0x1, [@TCA_ACT_BPF_PARMS={0x18, 0x2, {0x6, 0x5, 0x20000000, 0x7, 0x3f}}]}, {0x7f, 0x6, "e114e5b80420859e5ad404627424664826d7527b3eef6d4e3fed06f426267cea680fec17ba4d4194bb9f9c763eef06e0980b1a8b4180f65de799155cb7c2ab6e6bcd450706c66da2aab030d7a67727a8ab32aa47d220bc67cf5729fe479f23645d58f406edaf327d61a72bad8785556f06a5de45aee3a8b60695fe"}, {0xc}, {0xc, 0x8, {0x3, 0x2}}}}, @m_ipt={0x130, 0x1d, 0x0, 0x0, {{0x8}, {0x6c, 0x2, 0x0, 0x1, [@TCA_IPT_TABLE={0x24, 0x1, 'raw\x00'}, @TCA_IPT_TABLE={0x24, 0x1, 'mangle\x00'}, @TCA_IPT_HOOK={0x8, 0x2, 0x4}, @TCA_IPT_INDEX={0x8}, @TCA_IPT_INDEX={0x8, 0x3, 0x80000000}, @TCA_IPT_HOOK={0x8, 0x2, 0x1}]}, {0x9e, 0x6, "ed07a39106dc6e5e9908fda8fc62b2323315703e10ac71f04b409616f3af8b4e1d5b35008683eb002b3ca1fbbc4599042a84c5a93f982adc2879d6337bc41249b5d0c4659ed4c216c8c972723ebe041cc9253a147bab0fd16b5c7a295b34eed0e1f96e0ab2f78a830105254788159dd5532eca6d60a4eae77d6171aae42dbee08c1a0c2876eae1f502a344a643becb274bc1f058fb7a7c0625e4"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x0, 0x2}}}}, @m_csum={0x108, 0x1b, 0x0, 0x0, {{0x9}, {0x3c, 0x2, 0x0, 0x1, [@TCA_CSUM_PARMS={0x1c, 0x1, {{0x6, 0xcbf, 0x0, 0xffffffb7, 0xff}, 0x34}}, @TCA_CSUM_PARMS={0x1c, 0x1, {{0xfe7, 0x74, 0x1, 0x7fff, 0x7f}, 0x5f}}]}, {0xa4, 0x6, "3b2ed025b0c67a4831e91183f9edefc32b4a841a8873f87a4006036b3381a30d80b260749f318efedbeb6acddc93170220079696cfa08af704ef6da5ae35c070eda4fc6a185ba86f67595fb5257585078d8ef9aee8c0a4ee86940c703c0626aae5e2eaa238c75331b5867b3c62bb50dff8231bc5d5b2408913dff9ce0dbcf0863bff5e679d89b1f639948696926765d1705bb262d76821ad0dc9f68e4d8649ab"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x2, 0x2}}}}]}, {0x624, 0x1, [@m_ife={0x114, 0x1f, 0x0, 0x0, {{0x8}, {0x4c, 0x2, 0x0, 0x1, [@TCA_IFE_PARMS={0x1c, 0x1, {{0xfd13, 0x1000, 0x2, 0xffff, 0x5}, 0x1}}, @TCA_IFE_METALST={0x8, 0x6, [@IFE_META_TCINDEX={0x4, 0x5, @void}]}, @TCA_IFE_PARMS={0x1c, 0x1, {{0x4, 0x0, 0x1, 0x9, 0x10000}}}, @TCA_IFE_TYPE={0x6}]}, {0xa1, 0x6, "733190d4724d06aeacddbdd3a0d630808899b81bd949abf5bb8c79b619dc16091dc12b71719538acdd01e2ef7fe71426fd7192cadf63a4b638eecba40b6dd0969a18df5ed5f5c2977f2f2f443f1b278dd79e2ca24866f2f30c90c0065f2b945b4673d3a4984df89472ced1c0c41cc80702e55daa72bb742e9815e2617c7eadf5d8189f157b73b87c55db87071c4fe89d9d87ea1a0e12fb4ca4b00a2ad1"}, {0xc, 0x7, {0x1}}, {0xc, 0x8, {0x2, 0x1}}}}, @m_ife={0x174, 0x5, 0x0, 0x0, {{0x8}, {0xa8, 0x2, 0x0, 0x1, [@TCA_IFE_DMAC={0xa, 0x3, @remote}, @TCA_IFE_TYPE={0x6, 0x5, 0x8}, @TCA_IFE_METALST={0x1c, 0x6, [@IFE_META_TCINDEX={0x6, 0x5, @val=0x3}, @IFE_META_SKBMARK={0x8, 0x1, @val=0x5e}, @IFE_META_SKBMARK={0x8, 0x1, @val=0xa1e}]}, @TCA_IFE_PARMS={0x1c, 0x1, {{0x1f, 0x3, 0x7, 0x5, 0x1}}}, @TCA_IFE_PARMS={0x1c, 0x1, {{0xffff, 0x3, 0x9, 0x0, 0x401}}}, @TCA_IFE_METALST={0xc, 0x6, [@IFE_META_SKBMARK={0x8, 0x1, @val=0x941e}]}, @TCA_IFE_SMAC={0xa, 0x4, @remote}, @TCA_IFE_PARMS={0x1c, 0x1, {{0x1f, 0x1000, 0x3000000f, 0x4, 0x6}, 0x1}}, @TCA_IFE_TYPE={0x6, 0x5, 0x24}]}, {0xa5, 0x6, "a4a562b1762065dd348f870e0983446b700e487f65d348a7ddaef3c3f5b527d5db0d00be989661675f7df7a057986b01854a29f35937e236b09970c19b3d909d8db86fc6c9b268fa45c72742a0db741943e927837fb363721ccdf9dcd2174bab8c59761fa0df1fd48d974e8ce8dbdce06fcb5564d7b57f611b903f4725ca77f876d107eed071662ac6f54be7251033e56095e626b9fbd6310f0fa06b1c38e99187"}, {0xc, 0x7, {0x0, 0x1}}, {0xc, 0x8, {0x1, 0x1}}}}, @m_connmark={0x1dc, 0x8, 0x0, 0x0, {{0xd}, {0xe4, 0x2, 0x0, 0x1, [@TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x80000000, 0xffffff81, 0x0, 0x80000000, 0x89}, 0x7}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x1000, 0xfffeffff, 0x1, 0x90, 0xeb9c}, 0x800}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x8001, 0x5, 0x2, 0x3, 0x401}, 0xa27}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x4, 0x8, 0x4, 0x8, 0x40}, 0x58a}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x1, 0x45, 0x6, 0x7, 0x7}, 0x1ff}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x381, 0x8, 0x6, 0x80000001, 0xb0}, 0x8}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x5, 0x0, 0x3, 0x5ef, 0x4}, 0x1}}, @TCA_CONNMARK_PARMS={0x1c, 0x1, {{0x50a, 0xebb6, 0x5, 0x1}, 0x8}}]}, {0xcb, 0x6, "a2065181305c282304424f4e6a3328880332912d1e56bbb0bef98096e48b7d19c93af1c16f6100d511460d1701380771fb10c510c17d8ea5c58f0af34b5f241a61be9dcb06d0fdba013fe67405c5d6007a891e23a7755533748cb83bbe7c5d602e6d7c1b01c8d820919dcab82a57f048fa8bd44036d1b8af9f412d2201802d4322f908a7cd5a9688e1a7b1dd57860240400c57e4434dc34fd4a51ce6e4350c5ffe12367201a73a0413af26285c897e1f3a6e52e882576c9ba12eea695616e28a0b0327f0d6f4f2"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x0, 0x3}}}}, @m_police={0x140, 0x13, 0x0, 0x0, {{0xb}, {0xa0, 0x2, 0x0, 0x1, [[@TCA_POLICE_TBF={0x3c, 0x1, {0x10001, 0xffffffffffffffff, 0x80000000, 0x0, 0x9937, {0x8, 0x1, 0x5, 0x3fb1, 0x5, 0x4}, {0xe1, 0x1, 0x1, 0x2e1, 0x3f, 0x9}, 0xfffffff9, 0x8000, 0x7}}, @TCA_POLICE_RATE64={0xc, 0x8, 0x51f}, @TCA_POLICE_TBF={0x3c, 0x1, {0x8, 0x0, 0x6, 0x1f, 0xfffffffa, {0x2, 0x2, 0xf001, 0x2, 0x7f, 0xffff4f7b}, {0x6, 0x1, 0x5, 0x86a8, 0x4}, 0x4, 0x7fff}}, @TCA_POLICE_PEAKRATE64={0xc, 0x9, 0x200}, @TCA_POLICE_RATE64={0xc, 0x8, 0x1ff}]]}, {0x77, 0x6, "5598e2988c887e6ffed3703628a518c30c30483bba5a717935df139714c4d640fbba04e456745415e0d711c73904febc516ee3634e755e8c69ffcc28fbbf98ca3c0f71473bc127ea078d511b024d3a501e14c50132e22bd27d9aba95b17c35c1a2f318cba511ebe0d1e28b0527c693cc5c5197"}, {0xc, 0x7, {0x1}}, {0xc, 0x8, {0x1, 0x2}}}}, @m_sample={0x7c, 0x19, 0x0, 0x0, {{0xb}, {0x44, 0x2, 0x0, 0x1, [@TCA_SAMPLE_PSAMPLE_GROUP={0x8, 0x5, 0x1000}, @TCA_SAMPLE_PSAMPLE_GROUP={0x8, 0x5, 0x6}, @TCA_SAMPLE_RATE={0x8, 0x3, 0x1}, @TCA_SAMPLE_PSAMPLE_GROUP={0x8, 0x5, 0xcaf8}, @TCA_SAMPLE_PARMS={0x18, 0x2, {0x3, 0x80000001, 0x4, 0xfffffff9, 0x3}}, @TCA_SAMPLE_TRUNC_SIZE={0x8, 0x4, 0x9}]}, {0xf, 0x6, "6cf9c7c52ff6cd99f8c542"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x4}}}}]}, {0x1ad8, 0x1, [@m_ctinfo={0x10c, 0x11, 0x0, 0x0, {{0xb}, {0x24, 0x2, 0x0, 0x1, [@TCA_CTINFO_PARMS_DSCP_STATEMASK={0x8}, @TCA_CTINFO_PARMS_DSCP_STATEMASK={0x8, 0x6, 0x35bd0d31}, @TCA_CTINFO_PARMS_CPMARK_MASK={0x8, 0x7, 0x80000001}, @TCA_CTINFO_PARMS_CPMARK_MASK={0x8, 0x7, 0x3ff}]}, {0xbf, 0x6, "2e3bf203da98643e1ca2aa2bad42f8a5f4076dc15f0bb18f06e3d39d77f5c58bb6e6a85a874c8aeb6a86a3f32ae1d289aa866062b6b6c9061393d19d0b946564b0ea20c439d69c4f46aa62f545e3933fedb9833d2da74a0a04f38ec6f9cfe6051f1ba71790e5693eb66e887b77c348d65dd7539884f185199033b6893bfb3f0786961fec420be1a25c3d5b6ed8aa04c8a0816285934da065c688ffbb747f451ede5ea1185350741527192fb39ea9281729de891e5fa26360f08601"}, {0xc}, {0xc, 0x8, {0x1, 0x2}}}}, @m_skbedit={0xb8, 0xc, 0x0, 0x0, {{0xc}, {0x24, 0x2, 0x0, 0x1, [@TCA_SKBEDIT_QUEUE_MAPPING={0x6, 0x4, 0xffff}, @TCA_SKBEDIT_PARMS={0x18, 0x2, {0xfffffff7, 0x2, 0x4, 0x80, 0xfff}}]}, {0x6a, 0x6, "816ba8fdfd894b7cc1d73fe2c25640e7d25ac864a9ee055c06e7f04c561466453cbe67f143d1e548884dbe431b2116e10bee29a82b65e2cc4b97b67156e5f82798b6e7d6ac0a92cb6e1dff8ad5102cba219355207e1e38f13c8677ac5bcfaf3809a21947ced9"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x2, 0x3}}}}, @m_skbedit={0xd4, 0x1e, 0x0, 0x0, {{0xc}, {0xc, 0x2, 0x0, 0x1, [@TCA_SKBEDIT_PTYPE={0x6, 0x7, 0x1}]}, {0x9e, 0x6, "dcc0f2c08fdb5ae17699bfaa563dac537ab9a1217a4b48236fe8212bf0e164d1a9cd53b010a0aedc5d6f65f4f34c2fd439eacefcc24edd3de7750deae1b7efa15bd2347f022c5d76f1fef10e956e7b8a55710a37f0ce69a7ec4d4042152dfbd81e372e7e5fa400f54687b179db51ede685918fe8b527e68e4695bd58f6074e9697c811347c4a70a07f4b2772f008d3694bd525986992ac9589e4"}, {0xc}, {0xc}}}, @m_skbmod={0x90, 0x10, 0x0, 0x0, {{0xb}, {0x44, 0x2, 0x0, 0x1, [@TCA_SKBMOD_ETYPE={0x6, 0x5, 0x4}, @TCA_SKBMOD_SMAC={0xa, 0x4, @broadcast}, @TCA_SKBMOD_ETYPE={0x6, 0x5, 0x3ff}, @TCA_SKBMOD_DMAC={0xa, 0x3, @dev={'\xaa\xaa\xaa\xaa\xaa', 0x34}}, @TCA_SKBMOD_SMAC={0xa, 0x4, @random="63f0e6c9a1d3"}, @TCA_SKBMOD_DMAC={0xa, 0x3, @link_local={0x1, 0x80, 0xc2, 0x0, 0x0, 0x2}}]}, {0x24, 0x6, "56c9427fb7341d15df7ce823f3283789a28e7675b2710f93dcb0cb142d217c4d"}, {0xc, 0x7, {0x0, 0x1}}, {0xc}}}, @m_tunnel_key={0x154, 0x7, 0x0, 0x0, {{0xf}, {0x84, 0x2, 0x0, 0x1, [@TCA_TUNNEL_KEY_NO_CSUM={0x5, 0xa, 0x1}, @TCA_TUNNEL_KEY_PARMS={0x1c, 0x2, {{0x90f, 0x800, 0x4, 0x3, 0x5}, 0x1}}, @TCA_TUNNEL_KEY_ENC_IPV6_DST={0x14, 0x6, @mcast1}, @TCA_TUNNEL_KEY_ENC_IPV6_SRC={0x14, 0x5, @initdev={0xfe, 0x88, '\x00', 0x0, 0x0}}, @TCA_TUNNEL_KEY_ENC_DST_PORT={0x6, 0x9, 0x4e20}, @TCA_TUNNEL_KEY_PARMS={0x1c, 0x2, {{0x3f, 0x3, 0xffffffffffffffff, 0x6562, 0xa72}, 0x2}}, @TCA_TUNNEL_KEY_ENC_IPV4_SRC={0x8, 0x3, @dev={0xac, 0x14, 0x14, 0x3e}}, @TCA_TUNNEL_KEY_NO_CSUM={0x5}]}, {0xa3, 0x6, "145dc3bbdab9062019589f7e7366306f6c93001170ac40c9db2b5d1f1f0e54d395d3460b7abe706dd0c782c1d48fc18bdf2f8b2c9c3b8cd137ec6a06637496507c41a9dc34b2075b83b9f7491029875632cfe951331b20ee1c9af252f77c5397db9f13cb7012462349581152577e404fb856c0d9fbc5da33f7614a0e2a4a1736179a92049c5f62dddfbcfe938cb07c33deed69a38f8147cc9963f7c9ad5a9a"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x0, 0x2}}}}, @m_nat={0x220, 0x20, 0x0, 0x0, {{0x8}, {0x144, 0x2, 0x0, 0x1, [@TCA_NAT_PARMS={0x28, 0x1, {{0x3583, 0x8, 0x1, 0x7ff, 0x6}, @local, @local}}, @TCA_NAT_PARMS={0x28, 0x1, {{0x94, 0x1f, 0x8, 0x9, 0xbb24}, @loopback, @dev={0xac, 0x14, 0x14, 0x44}}}, @TCA_NAT_PARMS={0x28, 0x1, {{0x6, 0x473, 0x0, 0x4, 0x5}, @dev={0xac, 0x14, 0x14, 0x38}, @dev={0xac, 0x14, 0x14, 0x32}, 0xffffff00}}, @TCA_NAT_PARMS={0x28, 0x1, {{0x80000001, 0x3d, 0x2, 0x8000, 0xfffff25c}, @rand_addr=0x64010101, @multicast1, 0xffffffff}}, @TCA_NAT_PARMS={0x28, 0x1, {{0x80, 0xd0b6, 0x5, 0x0, 0x6}, @loopback, @rand_addr=0x64010100, 0xff}}, @TCA_NAT_PARMS={0x28, 0x1, {{0x400, 0x9, 0x8, 0xffe00000, 0x100}, @local, @broadcast}}, @TCA_NAT_PARMS={0x28, 0x1, {{0x1000, 0x5, 0x0, 0xc04, 0x8}, @multicast1, @private=0xa010102, 0xff}}, @TCA_NAT_PARMS={0x28, 0x1, {{0xffffff80, 0xb1f, 0x8, 0xe0000000, 0x8}, @multicast1, @initdev={0xac, 0x1e, 0x1, 0x0}, 0xffffff, 0x1}}]}, {0xb5, 0x6, "82a93123d443f5fab7f90a3d0ce169b9a16765d3d4daf6f8f1883ff43d3b4e5c34ac5025c262be2ac3da58ffd71a33ef6f8b3d13b037ce39577724f421f0c159bc792874a815762dca0ec20ab78683636a11e1d57e602fdfffb6f8e324ac0d289717bb009226cdd57b189b10ef461d961539e4d94796680f5671812bfadba0d7f9b5962c5a6b1632055a38e35855843e1a9dea77cf894565228c94fe7a79333c45fb0b6c9c71bea3bb6fa3d377693295e0"}, {0xc}, {0xc, 0x8, {0x2, 0x1}}}}, @m_csum={0x178, 0xc, 0x0, 0x0, {{0x9}, {0xac, 0x2, 0x0, 0x1, [@TCA_CSUM_PARMS={0x1c, 0x1, {{0x117b, 0x4, 0x0, 0x4, 0x4}, 0x27}}, @TCA_CSUM_PARMS={0x1c, 0x1, {{0xfffffe00, 0x7, 0x0, 0x4, 0x3eb}, 0x22}}, @TCA_CSUM_PARMS={0x1c, 0x1, {{0x7, 0x4, 0x6, 0x1, 0x5}, 0x29}}, @TCA_CSUM_PARMS={0x1c, 0x1, {{0x7ec47eb6, 0x5, 0x3, 0x1f, 0x8}, 0x53}}, @TCA_CSUM_PARMS={0x1c, 0x1, {{0x4, 0x1, 0x8, 0x1, 0x200}, 0x53}}, @TCA_CSUM_PARMS={0x1c, 0x1, {{0xfffffffb, 0xffff7fff, 0x4, 0xffffff00, 0x4e}, 0x19}}]}, {0xa2, 0x6, "1ee90b85ee2c334a74176fe00d36579866d498271e113cc6b14a984e644e3d89b5b6b029b6e1523117c0d3148b0e004dd57646a0c21991264170359e1e673eabd4d3c0ed5120dac8a03181f54af68576a2aac39b3976383034754f72f51847087e17a686522c99d5b8c85c1fc46d9f7d1655032785d3f8e807f9fb84c86846f6b4db72ec7371a16bc63a15b8579a043112f2469446f21735a8afe927732c"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x5, 0x2}}}}, @m_simple={0x10f0, 0x1d, 0x0, 0x0, {{0xb}, {0xc4, 0x2, 0x0, 0x1, [@TCA_DEF_PARMS={0x18, 0x2, {0x8, 0x80000001, 0x5, 0x2, 0x4193}}, @TCA_DEF_PARMS={0x18, 0x2, {0x7fffffff, 0x0, 0x0, 0x9, 0x1}}, @TCA_DEF_DATA={0x8, 0x3, '/5-\x00'}, @TCA_DEF_DATA={0xb, 0x3, '(I($\\\x14\x00'}, @TCA_DEF_PARMS={0x18, 0x2, {0x9, 0x0, 0xffffffffffffffff, 0x101, 0x5}}, @TCA_DEF_PARMS={0x18, 0x2, {0xe0f6, 0x6, 0x10000000, 0x8, 0x5}}, @TCA_DEF_DATA={0xc, 0x3, 'devlink\x00'}, @TCA_DEF_PARMS={0x18, 0x2, {0x40, 0x7, 0x10000000, 0x5, 0xfffffffc}}, @TCA_DEF_PARMS={0x18, 0x2, {0x52bf, 0x80, 0x6, 0x7, 0x3f}}, @TCA_DEF_DATA={0xe, 0x3, 'netdevsim\x00'}]}, {0x1004, 0x6, "25255bcdbdc8f4b2c8f147ff890ed6c73b9e4dc32526bb816046dc6fc12904a209ed7abd71d3ed30509af03b59b12c10b161a4b920c51a33fff2100f4ea37038bd0b6ad9cda5804dd939de67ee2e0ef2d3b00b1af7a871de9d1d52049068317c879fbd6f4a1af1ef35be32a465c75d500609fa9f25c71abcb11e90b37d124203598f8e93fe6e36475a357a7c3ea8af5694b4d07ae01edddf164a7cfd743f0674246246dc3d77284e6ea078545c6c2e44cb72ca64c19805c6871928e0d0ac5b69480ffaaaa6a0ab02f1320a5f8537370869ef1dbd6733665792fcdc028d5671b184a0ceee346ce401e6d777ecfd6f63c8ba63eaa42efd1202f7d941e3e7fea90e81bd85447e88a5f19d9c01cf5ae4473b7bcbabadf9579dad7a25110c6d298ced1c3fc6d3961d0fc27b5ccaa5d80720b87e7bd9ee2f133fb36b665348d55ee33f02f7f5eaab38fbc2e3e81a843c4495daea15a3cd16032355483d9d82a4e79c22ef83f5222f29917155a0d1ee7a4484a1271242e2640c879985371e0e5053ec7ef35ef796d462096fb9d6f025a27f3637df702567c0fa142f56c820362d2ed658587be5478db01d1a6b7e1dc3b1ce7bf84bdb394f5a44fbac68c9d54554e474487c518f3f9a0b616574826250856f1349419ed31ca457b46b69d2f6b32feaa7c61757849fc9cec4b30c3d47c017e1bde0138fe4e929813b503f6178b27c2352ca0c31f84f5f816dbc4aca7396a6e9711fe20c52e829cf303fae97d3fb7dac97862f82518de23a29c775f1a5672f4a36e51a4859a1915693b19b49f1fc5dcbefc2b5d189fc3892d997ff0457cc7a4134dc290d00466068604851bc2ab8c3f9a7ba0045e261950ab6ec478f3d27917baed7c13c461a49eaaaf2b8321092187fe78d8ea1cfb4b5513dd734757378c07c649ddf9717185bee960861cae53ec812b7f3434a4af30c4048ed6935300f653c21a9096395ddefff8eba37bd82ad2ce24a0298084b83694b33316b9a6e3b0db1357b5176f0b406b4c712840536df63c7726cd9d032d28adb9f0ea1e34f355bde413b7be7d264bda7addbfd883abc001d55e143596c226151cfa9f1b7b6d51eab681e3cd696b9e76548f4d572ab43430152b92fddb6f889d4d22271b9f75932b5b400754d3fb9c04991bbc452f432bea0fbba85e9378d0e765879881336ef6cc193a9269f76b8fa4a94d17140e83eca2350b69aae517ece055afde4528c859d0b352386abf2dcb833b83112599baa501d68cb168710dd3758ad254e82d8e999383765086790ffc7f504a93e87bd48d6a3bb6695d582c35057b079f17c4e21825eeda109e71760f72f96912a07b8d4f7015e102dfe86c5068170e45b08acfdf2b0837114daebaf90f1e4b9688aa9be8ff93029d9490cc4170f2481e9742ad85f99ff52ddff37f2cd9e0bf6d7c11a7d63323799b7602f6015dbc119591b4ceb8a7b16a0bd7ca8c6675dfd3773c7fd0aba92f3e46fcc1530c548cabc7638c331b2564b945803fa5b503e3f3bf5686c2644da7bcc58f9ec098784fd9df80b130b147b810e4a6ad2600e49c797da00c5b313be8ba0da1eeed6396707df9ce4d68e283b4332c2ed977b4eff450895b84d0a32349264a5d839d516e2fa2e23b7c0cbf5870283147028a133cb09496f407f36b488fbed379264c891a18d04ae9553378a0b80e473951be22bb19f02361b34121b2a19ede7ec48ac6bad1bde21682e494fa6d91f4d7318cfb0b07328176c9ac47cda3d1113e48ea100cec9182edb02693bf39710c0f06168b2ad18864cceb2f3eb168d439c27f24333158c742c07d180b984db40fc4d3d1f5fa395f9d7dcc878ced57daea908ff12119b8e68d2e2020abcef0d455b5f801ce48d5b4ec1ad1827f925c325648ad58436f04ce01f449dc7058516f7b42b5eaab0355ffb2633c71429695dc567b68d34b2def3b94f91d6e35e7bdcc87771d8d53b825cdc5248271a907bf5721079e6204f2021b6c18c1280bfe73507b1e592f91fa89dbe8117e97e6cf042886c4bfe36188c44915ca62febf74832218cae4a5f132672fe4496d41d5bdac11b93c514eae886ae8354c3a1d11e504da099dac901e023de2d37bd137e67b872f0a65d5150275dd6c2abef5534fcb4404679a4e35696057707a0ec24d90df6592de543b4b2bf632709029af03551d9b8962ab488e972c9a6b77ce4dbc9811895093e821244a1cf88f00283d9bb285247928994b79003f654f7f27ba09204ed18e78e6824982c080e44c3ec8577c1f877a1249b7da22341e623a239c201f93c1ecd57e48b7386714eb916721f528f3f0a1a42107df491af1667804c9b907652604b948ca19d1e063ed3151679da70dc0f4d750ad5375e8f5b171f2db3565a3bb48e019eee197e1c4596ca9522fdf9eeff8cf33fab0d80df231f92215a42aa83e80d407b8484c71b050ee21b25fc599e0c84082a4062ea2d8e443ca1cdd306b0b4f378d3afe0e3da5201e5f8880806693b8660cfff851b30a746022a2609bdf7a177d8de6d75f72309269df323aee48ddbcdc20126df635e655e2537ac0b5f6bc79f837360f3978ea8c71faa2e2b6f5a37e27c5752c2f515f89f5d9d48569565645b761835b85ecc0f82d3f5e5dc859bfdd9d8efd0d646448e5a1375df718e4e3c14c917deb0b8afb6122b74ba7b85d57d1b1a9503eb171b6b2695dfeaee280dedb42242228e901f18e8498357587f8497bcab15a9862a795500802d3d72ff340173d74a8e0b27ab707b5cbcf5b9db703268ba5f499e4fde176cca92a94b6757b4674381735dec739873b06805b9be864b5f7e1850bf0623f757560a35b5774e111cfeee4b90820ce450d04e228cbb3cb866d90acccf888199d418ce77f5f948f2a7d15f0517115fc204ec31161d51f0192d25233e819b69224dbc71117f88a6a86e93d6ec0f6512e2ba21c708cb5bad0b61794c74401775bcdf85322995e3e14ade3fcda77920cbd7a48fb2d1440ad5abdeff5a6eccbdd6d3af6ef7cff2d3dfc8e31d8ca2903a6d4e91f504aa314a46e566c85100517a5f6732f7073e3b941bdebb9e2ddaa5bb9f0c6da96f9a13406fa07749dad22685e4160b64ea155b45986b2524cfaed58e39be18ec05a4fe6b77d6260e54edb24d0dcf13b51ebeeff5fa3e8a4d45d3cf109e972ddee9e4398b7271f678c076040d02da19bf4cf87c0b1fd2e0ec1fb66fc645f60c6ed0e4a691869c8626d325aa20de23037e84a57dc86fcbb905c8244bebce1764693bcc71e3f8d5e6e67d6d86f6347f54254674c0a03afd59a9a9a8059ca0780569e16e6a1d952ab198d438d63cf4561f5bee9a0f7b10a18434292c581b6977a1d80d3b2fff1f68abae3e52c2aac712d9cfb5bc8f3cab4d84bc6ccf66f0c6fc71a392a6b380aeac8be5446b05efa0cb74c8a20f0a9c11e568da294498e0222786dd2632ad96cbfd5b12f0f0cfbab33f690af1c53079a4ca168f7f9230f29567ea014ac69af742714315f5a6f41a1d94d18ecc77324da78c9f3ded05a562031ffa876f9a44c5731659205130ebeb7cc42d0dc9d70c46792793389b4f062426eb249c17a57800a2db7ef695a5e1e91b457639ab42e4da93fa74d1b5de4c5591597fc0733d80edfad885194e677429033ae1f6128734c89760186759db59f98fa730bd2bff3347ec997c72fa69ae2994f8ce0f9e97e6b92eb228a0e465bbe22144276d7e7b554c33777a8f01f8b5d9b53e90704f023477f2c63a0bb45663226ccbff0be5d30d7f56d972a8fbee6acf1214b9e2b5122f5a291d4062d153d118d25aec3bd16d6bb8a8725fb54e6a5b0d9c02acb906bb168fe1aa3d29ba6a109a9157cf1cdc36cf062582ca71fd4b4f07c645d6e1d03c997ac0268fcfb785e16269af89d639fec179330e55f03e3e7f04c9361601c5aa2e5fa42fb486faf6eb8bf7e96e9ca7dd177ce7f0706d0ac1d5ea3b324f0fb272ea106cc8004da46b341aa734327cdeaaae5cb1b909c8bf672c5a25a40e9e7e63337b2c8525cbec1e7712c13119cbdb4c13a7398ed8d9de5ee95bd4a8677db5a80b521acd859c296930f41fa1669ff444296d55b5d9fcc58e85990624c3ab12fb43c517ed7d42b34ce483f119a7cb3dc0e62d4dd9adb8783a4c98a1c0f1467fa674477db0821c50008a0b47177d9b51202fc484dab6149ba890c66ef1b6dbd6e0e97c592ca689e1a786c5843edab9f435bb35f88c587c7c7c14d8ad6b2785d86b737b53a93f3740633c160337e8688884bd48274b0bd33bbd74812ddd772ce6439bd35f9be87e34d61fa22b4f133c347341fa5cff42a576c9b09fca61f35f61d856bc47fd7fef003bb46a52253399d64d6a2d82b0def5f4988652af79c2fff311f855e850f6f6ce64ca3079202c7e39c228a69185a576fcd709f3d7ee3ee3a3e7938ccecdc67328e4821046f9457f222ea9ae2e98c31b420a524b3a95db12e2d91fbc67c9878edb12e316f386e436e993e93e9d9c06cca92776e7bed20fba5372887e8d65410793d133dc40d27d1d46b3ee61e1f9227c86ff291e0416271b3237d95e77ad7a9a79568bb10b955f34562c2d1df4d4bba88197803b0315af29bc28adaefc32980dd2e09f80a4ac760d59e5ebc954c6523a25ab334e2bbc1a9e7bb7dee66667aedd260dd546db1a19489a51fb4345be5137e990e4bba4d8091af84b0322a49a29fc0f876442f79a7dd09631df7b3e116f7d3b4f427aaf280704d670c72a531280967bd5faef01394ffbfdb48a2b633e4035354e6993669021f2286721ccd5460b9f6de86201dd458ae6c0bb647a7c3e3bd135fecfbe429608f7f10d3f15762ee667877624f97f6c12b9bd9035d076709246f6076c09bb022463991c0f15c3c367f2ea213a3718d79eea066619c20d663f1f657d2c0884a84f33c55106082e67964be6b6f349bf6bb61c605ca42f1450aa4028fff092d6ce40712f99f1440a71166ff4661a7154abe1edeaa355fa87a9ea10471f78404096f2f6b3cd2d687ad7e3a23bafb77b66a8576bbeaa7c63c11c7b4985b7d3443892f5ef2983ce5570ec4732de6f5669fa7f91fd50b480fcaffd16a578235f11ad1e1f553b09ac33257e48b0e0776646b298918f8893b8ee765fe5bc53ef5628cd7965353f9887e9c74bbc750b54f095e37acd56666a617ecc17eb82691d872d62d1a5ecbf1777ab78fb2e3b0de96821e37630de445c3ac2c65424da000dc9d473426b05cab5e51e206d6760abc137e629e7805e26c2c3a19a683964caf415112557bb41d299f3e88fd3da6804e88d7301c92771626eff34a1f183d85638022edf9a7e98f57f190cf89cdf85530c16e318bb052a0518d78fe1103dc0976a4dd9446365345f7322e360c8b07ee17bfbb913beb338aaa22e0f629c546aa265cebb928ec48aa29709f4113bb7f5a01168ded997c64c1c56a0c3292c94c9ca5eaa597eaaa94e25fd637d2e470ae98517a303be242b783b26d300fa77b96d5b14c69102cc360c47677a1f55243c0cc929363243e7c1ff873bdbcda71883a605ef10946dec94c5a16a8c0618f513fb09cd607fc8e0a13b1d9e92b6bce7786a8b4f641749ea7a074e0b868ed446eb9fb0fbfdcb0dc33d68ba54e0495c60a29caf15549e764ad9a9c5478f99e7a608a74c2df5f356b03d7cfc36136f26cba50f66d3a6cf0a09c0197ea184766388590a4f7a32829af1543b282b508f7c8be3d58cbf15d1e53d1e9e46152e9b52490328e2d1a166b0e24e6b9b79362f49a0e816fb0e83806262f2798ab0aa5c76f8e8"}, {0xc, 0x7, {0x1, 0x1}}, {0xc, 0x8, {0x3, 0x5}}}}, @m_ctinfo={0x138, 0x12, 0x0, 0x0, {{0xb}, {0x1c, 0x2, 0x0, 0x1, [@TCA_CTINFO_ZONE={0x6, 0x4, 0x7}, @TCA_CTINFO_PARMS_DSCP_STATEMASK={0x8, 0x6, 0x77c}, @TCA_CTINFO_ZONE={0x6, 0x4, 0x6}]}, {0xf3, 0x6, "4b61155b580b13ffe9e57a22663c042f9b8c1e68df0e9ee836dc45c9d1b734049759e1f19516b0db7a039a07f9fdeeb9033f8e0724cb4472f87d00423da79519d5adf19faa381943a13f1327c65bb0d32871c4d45b58c4fb9dfc9374e18b6b5506b2f8cef58a453ae80475b9634bcb87635918184ea5c406f71ef00e4a70fde4ec8e97c4a63eb8669b446109b6c8048cadce1cf8e3c7bd6c2420058e61c6032308ecff8882844989d354e88ae44c4ef9d03e7223c48e29a5e0a0a50053bfba2340cfec0a75bcf9b1440e0fbe9d7dbb720032f37dbe15626a94f707145e59b3d79839cd04b86ba24ee9c5817478f1ea"}, {0xc, 0x7, {0x0, 0x1}}, {0xc}}}, @m_nat={0x98, 0xd, 0x0, 0x0, {{0x8}, {0x2c, 0x2, 0x0, 0x1, [@TCA_NAT_PARMS={0x28, 0x1, {{0x3, 0x8, 0x7, 0x674, 0x9}, @dev={0xac, 0x14, 0x14, 0x3c}, @initdev={0xac, 0x1e, 0x1, 0x0}, 0xffffffff, 0x1}}]}, {0x46, 0x6, "a99f2edf51c4ce313f255323396537ba9b262a9e73e4bf91025de63f75c0413710fb473792b626135515e35c68026eb173d057a6d19f819ba4eb621c89910f618cf0"}, {0xc, 0x7, {0x0, 0x1}}, {0xc, 0x8, {0x3}}}}]}]}, 0xf7cc}, 0x1, 0x0, 0x0, 0x24008844}, 0xcf1552c6a501043d) r11 = syz_genetlink_get_family_id$devlink(&(0x7f0000000180), 0xffffffffffffffff) sendmsg$DEVLINK_CMD_SB_POOL_SET(r0, &(0x7f00000003c0)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x10000}, 0xc, &(0x7f0000000380)={&(0x7f00000001c0)={0x18c, r11, 0x100, 0x70bd2c, 0x25dfdbfd, {}, [{@pci={{0x8}, {0x11}}, {0x8, 0xb, 0x8000}, {0x6, 0x11, 0x8}, {0x8, 0x13, 0x1}, {0x5}}, {@nsim={{0xe}, {0xf, 0x2, {'netdevsim', 0x0}}}, {0x8, 0xb, 0x1}, {0x6, 0x11, 0x6}, {0x8, 0x13, 0xfffffffb}, {0x5}}, {@nsim={{0xe}, {0xf, 0x2, {'netdevsim', 0x0}}}, {0x8}, {0x6, 0x11, 0x5}, {0x8, 0x13, 0x78}, {0x5, 0x14, 0x1}}, {@nsim={{0xe}, {0xf, 0x2, {'netdevsim', 0x0}}}, {0x8, 0xb, 0x5}, {0x6, 0x11, 0x401}, {0x8, 0x13, 0x1}, {0x5, 0x14, 0x1}}, {@pci={{0x8}, {0x11}}, {0x8, 0xb, 0x5}, {0x6, 0x11, 0xde6}, {0x8, 0x13, 0xa5}, {0x5, 0x14, 0x1}}, {@nsim={{0xe}, {0xf, 0x2, {'netdevsim', 0x0}}}, {0x8, 0xb, 0x6}, {0x6, 0x11, 0xfff9}, {0x8, 0x13, 0x2}, {0x5, 0x14, 0x1}}]}, 0x18c}, 0x1, 0x0, 0x0, 0x40000}, 0x10000000) syz_usb_connect$hid(0x3, 0x3f, &(0x7f0000000000)=ANY=[@ANYBLOB="1201100100000020a306210640000102030109022d0001016b70ff09040042660ca375b2d1206bee1c7b20030100a2092136000201229b0e09058103200002"], &(0x7f00000000c0)={0xa, &(0x7f0000000040)={0xa, 0x6, 0x310, 0x20, 0x1f, 0x1, 0x8, 0x1}, 0x24, &(0x7f0000000080)=ANY=[@ANYBLOB="050f2400020b10010c0e002055070009141004c0ffffff7f000000000000090003000000"]}) clone(0x4000, &(0x7f0000000400)="4130c142f3507699eba1895e7396f2130d7e96f1a9307725869f7f167840683fb35c761f333f524af2828dd5fa00ab93b054c3bc0d5cc3cb8a52e46d76ca2aa0df6a74fe8ff857cda7ab700581a32650", &(0x7f0000000480), &(0x7f00000004c0), &(0x7f0000000500)="6bc2b7") [ 307.019037][T10437] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.0'. [ 307.088319][T10443] netlink: 4 bytes leftover after parsing attributes in process `syz-executor.0'. [ 307.174369][T10443] netlink: 4 bytes leftover after parsing attributes in process `syz-executor.0'. [ 307.193692][T10446] netlink: 4 bytes leftover after parsing attributes in process `syz-executor.0'. 17:49:35 executing program 0: r0 = openat$dlm_control(0xffffff9c, &(0x7f0000000000), 0x8200, 0x0) ioctl$SNDCTL_DSP_SUBDIVIDE(r0, 0xc0045009, &(0x7f0000000040)=0xfffff701) [ 307.733345][ T8838] usb 4-1: new high-speed USB device number 2 using dummy_hcd [ 307.876646][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 307.887062][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to enable software MII access [ 307.973058][ T8838] usb 4-1: Using ep0 maxpacket: 32 [ 308.030092][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0000: -71 [ 308.040450][ T8451] ===================================================== [ 308.047394][ T8451] BUG: KMSAN: uninit-value in asix_mdio_write+0x512/0xa80 [ 308.052311][ T8451] CPU: 1 PID: 8451 Comm: kworker/1:3 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 308.052311][ T8451] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 308.067014][ T8451] Workqueue: usb_hub_wq hub_event [ 308.067014][ T8451] Call Trace: [ 308.082334][ T8451] dump_stack+0x24c/0x2e0 [ 308.082334][ T8451] kmsan_report+0xfb/0x1e0 [ 308.082334][ T8451] __msan_warning+0x5c/0xa0 [ 308.082334][ T8451] asix_mdio_write+0x512/0xa80 [ 308.082334][ T8451] asix_phy_reset+0xd8/0x300 [ 308.082334][ T8451] ax88172_bind+0x83e/0xc80 [ 308.082334][ T8451] ? asix_resume+0x150/0x150 [ 308.112238][ T8451] usbnet_probe+0x113f/0x3e10 [ 308.112238][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 308.112238][ T8451] ? kmsan_internal_set_origin+0x85/0xc0 [ 308.128221][ T8451] ? usbnet_disconnect+0x6b0/0x6b0 [ 308.128221][ T8451] usb_probe_interface+0xfcc/0x1520 [ 308.128221][ T8451] ? usb_register_driver+0x900/0x900 [ 308.128221][ T8451] really_probe+0xe15/0x24d0 [ 308.128221][ T8451] driver_probe_device+0x29d/0x3a0 [ 308.128221][ T8451] __device_attach_driver+0x63f/0x830 [ 308.128221][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 308.128221][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 308.128221][ T8451] __device_attach+0x56a/0x890 [ 308.128221][ T8451] device_initial_probe+0x4a/0x60 [ 308.128221][ T8451] bus_probe_device+0x17e/0x3d0 [ 308.128221][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 308.128221][ T8451] device_add+0x2c15/0x31d0 [ 308.128221][ T8451] usb_set_configuration+0x3872/0x3eb0 [ 308.199066][ T8451] ? usb_set_configuration+0xae1/0x3eb0 [ 308.199066][ T8451] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 308.199066][ T8451] usb_generic_driver_probe+0x138/0x300 [ 308.199066][ T8451] ? usb_choose_configuration+0xee0/0xee0 [ 308.199066][ T8451] usb_probe_device+0x317/0x570 [ 308.199066][ T8451] ? usb_register_device_driver+0x590/0x590 [ 308.199066][ T8451] really_probe+0xe15/0x24d0 [ 308.199066][ T8451] driver_probe_device+0x29d/0x3a0 [ 308.199066][ T8451] __device_attach_driver+0x63f/0x830 [ 308.199066][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 308.199066][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 308.199066][ T8451] __device_attach+0x56a/0x890 [ 308.199066][ T8451] device_initial_probe+0x4a/0x60 [ 308.199066][ T8451] bus_probe_device+0x17e/0x3d0 [ 308.199066][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 308.281069][T10458] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. [ 308.199066][ T8451] device_add+0x2c15/0x31d0 [ 308.199066][ T8451] usb_new_device+0x1bd4/0x2a30 [ 308.199066][ T8451] hub_event+0x5b99/0x8870 [ 308.199066][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 308.199066][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 308.199066][ T8451] ? led_work+0x780/0x780 [ 308.199066][ T8451] process_one_work+0x1219/0x1fe0 [ 308.199066][ T8451] worker_thread+0x10ec/0x2340 [ 308.199066][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 308.302151][ T8451] kthread+0x521/0x560 [ 308.302151][ T8451] ? process_one_work+0x1fe0/0x1fe0 [ 308.302151][ T8451] ? kthread_blkcg+0x110/0x110 [ 308.302151][ T8451] ret_from_fork+0x1f/0x30 [ 308.302151][ T8451] [ 308.302151][ T8451] Local variable ----smsr@asix_mdio_write created at: [ 308.302151][ T8451] asix_mdio_write+0xce/0xa80 [ 308.302151][ T8451] asix_mdio_write+0xce/0xa80 [ 308.302151][ T8451] ===================================================== [ 308.473558][ T8838] usb 4-1: config 1 has an invalid descriptor of length 209, skipping remainder of the config [ 308.484059][ T8838] usb 4-1: too many endpoints for config 1 interface 0 altsetting 66: 102, using maximum allowed: 30 [ 308.495254][ T8838] usb 4-1: config 1 interface 0 altsetting 66 has 0 endpoint descriptors, different from the interface descriptor's value: 102 [ 308.508691][ T8838] usb 4-1: config 1 interface 0 has no altsetting 0 17:49:36 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a0000"], 0x1a0}}, 0x0) 17:49:36 executing program 0: syz_usb_connect$uac1(0x0, 0xa4, &(0x7f0000000000)=ANY=[@ANYBLOB="12010000200000406b1d01014000010203010902920003c80000000904000000010100000a240101020c24020000000000000030000d2407000003000000000000000c240200e9ffffffffffffff09240300000000050245240505"], 0x0) syz_usb_connect$hid(0x0, 0x3f, &(0x7f0000000680)=ANY=[@ANYBLOB="12011003000000106e05fc0040000102030109021ed5987b6ef2b8b14e68ba9f742d0001ecff20c009040008020301020809212401030122b00d090581034000080803090502032000019c962c4da3583c4467d4fa78810ee600948724455f0122d04ed7a1d7a66b7a7e159a742f0f1b5b10084a7679f3cc27e7a194f26df54d4c1c388f293757f3bfb31d21f8b5289e8d1ad7da42de48262ed6a41b46a167dc8a64e9f1187ba3b6f2dc32386463d296d0d212d9bcbc7880fb9548978e838c99e775019517d18bed05554dbd2722758806059e2e5d"], &(0x7f0000000380)={0xa, &(0x7f00000000c0)={0xa, 0x6, 0x201, 0x0, 0x9, 0x3, 0x10, 0x8f}, 0x5, &(0x7f0000000100)={0x5, 0xf, 0x5}, 0x3, [{0xf7, &(0x7f0000000140)=@string={0xf7, 0x3, "e0d07d87b10de7a734739451cc5985fb7630b1eed386fbb8d8d9765d6c0d962ec0b4a1805d3e5036ff3124b24f0084c50faeac71c00b57a95feda0fa782adccc5c0a3b9513f2babafe3d0658def95bb649e79fba06a681ba0f5b80eff36cd674fabd69a9292736c0016b49b64d84bdb169471b8ccb5ce0d5bf7e8d728995a66f933a794251e4c31b0cddfda89ec52d0849e43f3e1358075e6c075005aea624a131e05c7f627281a5463f43d5bd3a2958f0da2acaf9606cf7a7926f9964948b0a77d65fa6b1cc29fcaf77f07c963213e784a8572fbbd5bef8d6bb177128c7109524f108433958e3b8ce1a28b121771dbde7d43cc40d"}}, {0xd4, &(0x7f0000000240)=@string={0xd4, 0x3, "4c9886c4bb450dec6dbc2d7bdecf55336ed022a5b163e54a471ffa38288f597482a9997594978cde95599307bf2083124df6c18f5a318f8b228c26b3f634814df528009da8d9c286e48dbfab8b233a223db92ff6135db1e6626ee3bac2d5d3b37af5ef5a92c0ba0b3ca3e1fee932ee45551a2aa55bc0ebfc93e51ee45c9f935374bea021e57b2ce1439aa9d91fbdccc5e7e4e7da96f93abde83836e70efae84fdff18acfff5e62fca8585b920ed51eacf992925335fc54902ec09181a4977ab676955aaad9baaaca7e54b1351c7134111552"}}, {0x4, &(0x7f0000000340)=@lang_id={0x4, 0x3, 0x100a}}]}) syz_usb_connect$cdc_ecm(0x5, 0x6f, &(0x7f00000003c0)={{0x12, 0x1, 0x310, 0x2, 0x0, 0x0, 0x8, 0x525, 0xa4a1, 0x40, 0x1, 0x2, 0x3, 0x1, [{{0x9, 0x2, 0x5d, 0x1, 0x1, 0x45, 0x20, 0x80, [{{0x9, 0x4, 0x0, 0x5, 0x2, 0x2, 0x6, 0x0, 0x6, {{0xa, 0x24, 0x6, 0x0, 0x0, "4a6956a5d7"}, {0x5, 0x24, 0x0, 0x8}, {0xd, 0x24, 0xf, 0x1, 0x8, 0x6, 0x90af, 0x1}, [@mbim_extended={0x8, 0x24, 0x1c, 0x200, 0xfc, 0x401}, @mdlm={0x15, 0x24, 0x12, 0x5c9}]}, {[], {{0x9, 0x5, 0x82, 0x2, 0x40, 0xf9, 0x8, 0x6}}, {{0x9, 0x5, 0x3, 0x2, 0xde44cbf3fbc5fcf9, 0x7f, 0x96, 0x80}}}}}]}}]}}, &(0x7f0000000640)={0xa, &(0x7f0000000440)={0xa, 0x6, 0x310, 0x4, 0x1f, 0x0, 0x10, 0xf9}, 0xee, &(0x7f0000000780)={0x5, 0xf, 0xee, 0x4, [@ssp_cap={0x18, 0x10, 0xa, 0x80, 0x3, 0x7ffff59, 0xf000, 0x8, [0xf0, 0x3f00, 0xffc000]}, @wireless={0xb, 0x10, 0x1, 0x8, 0x28, 0x3f, 0x3, 0x1, 0x5}, @ss_cap={0xa, 0x10, 0x3, 0x0, 0x4, 0x4, 0x4, 0x1}, @generic={0xbc, 0x10, 0x1, "f5c59cf2ba0e62717d3ec5616b7e21cc6887680c0b763f708b67b2cc84fde9717b23132b554878bd0765514101b825dac240b54c89b756d42302556bd2ea871263a487612eafd84a298bbe915855f2dbe85891590646c4955d86fb6609ea3f1da4414551b400a89b77ab1a742c401c67615d29cc594924754d6266616d9c72c3853e754e684ca35abb6bcb129ebde30ce2e885c58d16e9fe3ad45a5b655183f263a79719a4a41aa39ca8c6e0066167feaa7c0f6513af3225bc"}]}, 0x3, [{0xad, &(0x7f0000000480)=@string={0xad, 0x3, "4deddee74ef7164f87477b5e0118e40fdec5fa340b6f8796ac4d91cf7665aa1ca00847e28766769d40aa3ec7c757a0388c003c4033cdf5be6077490602a54ff9446038b52f2170190fc82b3a0cfd1d40391e37deb1ad30e895a91cf42a993b692ec524565b87e2d8de320d1065cfc0dbaeb0a3633e8a19a6e19deb186e9540dab49c1a8bd15293791048d7d4a433f9acdcfe1460c32d8b2d0c0a054a1fb23d4d85e6b415b050f4204f810d"}}, {0x4, &(0x7f00000005c0)=@lang_id={0x4, 0x3, 0x480a}}, {0x4, &(0x7f0000000600)=@lang_id={0x4, 0x3, 0x1004}}]}) r0 = socket$inet_udplite(0x2, 0x2, 0x88) preadv(r0, &(0x7f0000000080)=[{&(0x7f0000000880)=""/213, 0xd5}, {&(0x7f0000000980)=""/225, 0xe1}], 0x2, 0x5, 0x2) [ 308.803185][ T8838] usb 4-1: New USB device found, idVendor=06a3, idProduct=0621, bcdDevice= 0.40 [ 308.812711][ T8838] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 308.820860][ T8838] usb 4-1: Product: syz [ 308.825316][ T8838] usb 4-1: Manufacturer: syz [ 308.830081][ T8838] usb 4-1: SerialNumber: syz 17:49:36 executing program 2: syz_read_part_table(0x0, 0x1, &(0x7f0000000000)=[{&(0x7f00000000c0)="02010f0000000a000000ff45ac0000ffffffbf000800000000000000024000ffffffa9000000e100000088770072003007000500000000000000008000da55aa", 0x40, 0x1c0}]) syz_read_part_table(0x4, 0x3, &(0x7f0000000200)=[{&(0x7f0000000100)="25d5033091d4ebf1a80c50b239c30f3c961a0b8179e66242389f146ac802ab759d0a0d5f94606f6355b2f01b6a9b670979202cbdfef61b4d07db515de78863d8a615e824d15ee267a905b47d11eee9f1efc78b6234dfc27a61e0b6851450659b1ecb31dca7287b21bcb7304ec4551c18fa1b165bccbdfd915185e9dc7be2af0a11415330da36978636803ec71fb4adffe5ad4819a537e747c33c421ac733e41cd679cbdb393a2694dda054eb241adf46bf0a1a2b343b5727a840eb074362ea17737a4ba3d138a00c5d54bf9775f1e6a98ad2d77a924df06734edbc7c8ccde1", 0x0, 0x2}, {&(0x7f0000000040)="eadabea72145ba9ccf0b803f1081622ae22a61b691f941f68885c8135a51de0118389589bfd8cb2c597dbae8cf13d10286aba4cb1b02adc9805ae9557b089620e7", 0x0, 0xae3}]) [ 308.935659][ T8838] usb 4-1: rejected 1 configuration due to insufficient available bus power [ 308.944744][ T8838] usb 4-1: no configuration chosen from 1 choice [ 309.205985][T10470] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. 17:49:37 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a0000"], 0x1a0}}, 0x0) [ 309.442463][T10473] loop2: detected capacity change from 0 to 10 [ 309.545435][T10473] Dev loop2: unable to read RDB block 10 [ 309.551348][T10473] loop2: unable to read partition table [ 309.572276][T10477] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. [ 309.609618][T10473] loop2: partition table beyond EOD, truncated [ 309.616258][T10473] loop_reread_partitions: partition scan of loop2 () failed (rc=-5) 17:49:37 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f05000030000080240001"], 0x1a0}}, 0x0) [ 309.718966][ T4685] Dev loop2: unable to read RDB block 10 [ 309.725084][ T4685] loop2: unable to read partition table [ 309.751958][ T4685] loop2: partition table beyond EOD, truncated 17:49:37 executing program 2: r0 = socket(0x1, 0x5, 0x0) shutdown(r0, 0x1) sendto$inet6(r0, 0x0, 0x0, 0x401, 0x0, 0x0) sendmsg$unix(r0, &(0x7f0000000780)={&(0x7f0000000040)=@file={0x0, './file0\x00'}, 0x6e, &(0x7f0000000740)=[{&(0x7f0000000240)="8ae125323565d6d5e934f2fdebc9ba7385e59be310f9560a2fd3dcab602d4ce37fa3b7044269c821de52eff240efa46dac7f1392cc1cefec94361a13ddb539225e7df477d92479c01b82f177b501c4a11302f7af319042f1a2510ddd47270507ed771c50bac0e4188d6fee4ec5ce2e41a6ac90eb37192111137ecb2fd84b8e86b227d7bf95587c815c100e9e213327039413dab202fa912d18d8926cb9362e28ce926d34547cfadb3efab3d5b81f8430ea5e78623189a4ee8f7b2cac2361c615c65d79fbc6c37dc411fe9c27e8f4ab7553fac561c62c8ca14e2f7e495bdab7d0aa53dabc2f403152e0b3bf871d570f0162806b98f85b", 0xf6}, {&(0x7f0000000340)="2e20b9a1a440b289b502474f357e55ca1025b5d171c34670b447c01ae4ceccbc3dbc07d27a8382e34bcd51f58995c6a2608c50134756cd3341e19bfde334ef1038f63cee2daf7a379b8ca680581a9e252b77b53d3995bc26e5d7b5c4e3c8a94587ef75c3dee127a31bb314311bbf81fae265f6d80fcf631387688eea5f8c88bc62905f2ca1e9133a4fecded548053824c614eb37c2248d6fe2cf90d29ac36a0cbd1409648e9aeb1d199390a829e75900dfe18033143291ee56029757bc2c9ba07d8e3a5549b8a6f10955a1", 0xcb}, {&(0x7f0000000140)="eeff2fe80a3ea77c12ffa03ce488b32faa4c887cea66f6aa5ad54818f77c66a360aea61bb76856ab4090587da3f1dcd70ef0895de0fc429edd667455b3157fdc554ed81341354d105ee186c2fd583ca488264e0c147b4b17914f17245fecc46f283680b1742353b923be46b6450d384b1410dec6c6f4a9cff4766256cc5bf079f57fd8b725055c7d73a1f0fd951adc1157f92fc339d17a30", 0x98}, {&(0x7f0000000440)="170d1b9bb9b1de3785da3e7e52660c3efec40d8726ee54d78ec62425f34f07cb8baaf8b2806adbac54d14ed10e96934ee2b9fac535996e3fd9f2a071e5820a6459a9b44c5bdfecfd34c90b28", 0x4c}, {&(0x7f00000004c0)="14c9c521ea1a8aaa0ebd29a7381b20080ba6bc573bd5ba0b8fcb5408848b5e5281f48dbb7549ac6dcb5fc156cc2d2e39d65fd13d05348cbb5a279e1d8df93f6daffa1bf20d94bb384012d5ee977f7ad3fe8cd220ebb81609a35f15ff8173893cdfd6873db96d6bd07b8437a2fb63d6bb5b8289c1d600b587c376f40827c16a8c1578eb8b7865be57b5ca0d4fdb2463779903e5863f8a2cc8cf66e41d03ab3175e2fa4e27f33045249f9159ca450f0628a4384dcb9932db671ee595ab95c1a0d4e50c32f1e96775ef9b3f5755c10135b2d990f44da34ec84ee027a20d7af22790e866888d2ca291a3d1e843fefd4c", 0xee}, {&(0x7f00000000c0)="f4631114635ac4e6f5172c352e0c67e2191e8c7cf5a066dc72f7a8ed4fd3c9a1", 0x20}, {&(0x7f00000005c0)="e06b156d10059638779b2ea77099911ce4c3911d9ceef8f5f297c5ae3f5fcad6c0ae6e7281b697847a5a9d110866316b00704149cf648b2cb87917580140a244d966959b1ac145e920286ed0d595e38e4d87599398ddb55fb827649292802abfd6a86d9bb986c2de1e0e6277f83f0b3cf1814d3e04addcebb38196b2a50df4522ed91364736c3363fa1bb5bbf53df4c25e4e7bb625af6327bbe111a6cb9610ce03487f1d37e0c7a6daa3f18deba190896f215829733360e1c22711b8f945f9f661119ef5a00f62ab0ee5bf7c681f9d2c99b75ea615a71b4bdc6f6989e7b5c27907", 0xe1}, {&(0x7f00000006c0)="5af6eda07b70ee362fb50f40226c5d8a8820c7925c55cc587fef35b9452ed4d7ecb7b176fa535c12c866368207cec0ecfbd629bb2cc6a2fa321a91439c4e9f3d716d3cca04882a1491f85a900b591dae4c74560869fc64016bb21b7dc6e05c3e7d996fb45d66672b21", 0x69}], 0x8, 0x0, 0x0, 0x4000}, 0x0) syz_mount_image$squashfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x1000, 0x1, &(0x7f0000000200)=[{&(0x7f0000010000)="6873717307000000911d675f000010000000000004001400db010200040000001e010000000000004907000000000000ed060000000000003107000000000000e8040000000000002806000000000000a106000000000000db0600000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c65727373797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c73797a6b616c6c6572733e810200ed0100000100911d675f0100000060000000ffffffff0000000064000000640000010200ed0100000100911d675f03000000c4000000ffffffff000000001a0400001a0400010300ff0100000100911d675f0400000001000000260000002f746d702f73797a2d696d61676567656e3431393737363339322f66696c65302f66696c65300100ed0100000100911d675f02000000000000000200000029000000070000000900ed0100000100911d675f05000000de040000000000000a00000000000000000000000000000001000000ffffffff00000000000000000a0000010900ed0100000100911d675f06000000e8040000000000002823000000000000000000000000000002000000ffffffff00000000ffffffff000000000100c00100000100911d675f07000000000000000300000054002600080000007780010000000000000003000000240000000200040066696c6530480001000300040066696c6531040000000000000001000000000000000200080066696c652e636f6c64860001000100040066696c6530a60004000200040066696c6531e20005000200040066696c6532e20005000200040066696c653338800000000000000000860000000000000024000000000000004800000000000000a600000000000000e2000000000000001e01000000000000a10600000000000008805cf90100535f0100e306000000000000288000000600786174747231060000007861747472310000060078617474723206000000786174747232108000000000000000000200000024000000f50600000000000001000000000000001f0700"/1888, 0x760}], 0x0, &(0x7f0000010800)) r1 = syz_mount_image$squashfs(&(0x7f00000007c0), &(0x7f0000000800)='./file0\x00', 0xc940, 0x1, &(0x7f00000008c0)=[{&(0x7f0000000840)="10717d3ca765a2ca69e4f2ef46adc0ff02e6ea115476485acbe375eeb348c75de07a74571e153bafe49a441ef07c52d3ca3c6f18faa26e83c309b15f4d0f7462678a25a81ba0683b87a22cb32630e4d0715b1f6953c0ad5e3ed0715c597f4da5ddb7c67f2e0cf9c41ff60ee44b8436ddb5aa4c46c1fab4c033b0829992", 0x7d, 0x8}], 0x888000, &(0x7f0000000900)={[{'squashfs\x00'}, {'!'}, {}, {'\'\xd1'}], [{@fsuuid={'fsuuid', 0x3d, {[0x37, 0x38, 0x32, 0x63, 0x61, 0x61, 0x67, 0x33], 0x2d, [0x35, 0x30, 0x63, 0x34], 0x2d, [0x63, 0x38, 0x65, 0x35], 0x2d, [0x38, 0x39, 0x0, 0x37], 0x2d, [0x66, 0x66, 0x35, 0x36, 0x66, 0x50, 0x61, 0x37]}}}, {@func={'func', 0x3d, 'BPRM_CHECK'}}]}) r2 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) move_mount(r1, &(0x7f0000000980)='./file0\x00', r2, &(0x7f00000009c0)='./file0\x00', 0x1) [ 309.974214][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 309.984990][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to enable software MII access [ 310.014495][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0000: -71 [ 310.024758][ T8451] ===================================================== [ 310.031696][ T8451] BUG: KMSAN: uninit-value in asix_mdio_write+0x512/0xa80 [ 310.034687][ T8451] CPU: 1 PID: 8451 Comm: kworker/1:3 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 310.034687][ T8451] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 310.034687][ T8451] Workqueue: usb_hub_wq hub_event [ 310.034687][ T8451] Call Trace: [ 310.034687][ T8451] dump_stack+0x24c/0x2e0 [ 310.034687][ T8451] kmsan_report+0xfb/0x1e0 [ 310.034687][ T8451] __msan_warning+0x5c/0xa0 [ 310.034687][ T8451] asix_mdio_write+0x512/0xa80 [ 310.034687][ T8451] asix_phy_reset+0xd8/0x300 [ 310.034687][ T8451] ax88172_bind+0x83e/0xc80 [ 310.034687][ T8451] ? asix_resume+0x150/0x150 [ 310.034687][ T8451] usbnet_probe+0x113f/0x3e10 [ 310.100861][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 310.100861][ T8451] ? kmsan_internal_set_origin+0x85/0xc0 [ 310.112203][ T8451] ? usbnet_disconnect+0x6b0/0x6b0 [ 310.112203][ T8451] usb_probe_interface+0xfcc/0x1520 [ 310.112203][ T8451] ? usb_register_driver+0x900/0x900 [ 310.112203][ T8451] really_probe+0xe15/0x24d0 [ 310.112203][ T8451] driver_probe_device+0x29d/0x3a0 [ 310.112203][ T8451] __device_attach_driver+0x63f/0x830 [ 310.142337][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 310.142337][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 310.142337][ T8451] __device_attach+0x56a/0x890 [ 310.142337][ T8451] device_initial_probe+0x4a/0x60 [ 310.142337][ T8451] bus_probe_device+0x17e/0x3d0 [ 310.142337][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 310.142337][ T8451] device_add+0x2c15/0x31d0 [ 310.178614][T10483] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. [ 310.142337][ T8451] usb_set_configuration+0x3872/0x3eb0 [ 310.142337][ T8451] ? usb_set_configuration+0xae1/0x3eb0 [ 310.192096][ T8451] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 310.192096][ T8451] usb_generic_driver_probe+0x138/0x300 [ 310.192096][ T8451] ? usb_choose_configuration+0xee0/0xee0 [ 310.192096][ T8451] usb_probe_device+0x317/0x570 [ 310.192096][ T8451] ? usb_register_device_driver+0x590/0x590 [ 310.192096][ T8451] really_probe+0xe15/0x24d0 [ 310.192096][ T8451] driver_probe_device+0x29d/0x3a0 [ 310.192096][ T8451] __device_attach_driver+0x63f/0x830 [ 310.192096][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 310.192096][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 310.192096][ T8451] __device_attach+0x56a/0x890 [ 310.192096][ T8451] device_initial_probe+0x4a/0x60 [ 310.192096][ T8451] bus_probe_device+0x17e/0x3d0 [ 310.192096][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 310.192096][ T8451] device_add+0x2c15/0x31d0 [ 310.192096][ T8451] usb_new_device+0x1bd4/0x2a30 [ 310.192096][ T8451] hub_event+0x5b99/0x8870 [ 310.192096][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 310.192096][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 310.192096][ T8451] ? led_work+0x780/0x780 [ 310.192096][ T8451] process_one_work+0x1219/0x1fe0 [ 310.192096][ T8451] worker_thread+0x10ec/0x2340 [ 310.192096][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 310.192096][ T8451] kthread+0x521/0x560 [ 310.192096][ T8451] ? process_one_work+0x1fe0/0x1fe0 [ 310.192096][ T8451] ? kthread_blkcg+0x110/0x110 [ 310.192096][ T8451] ret_from_fork+0x1f/0x30 [ 310.192096][ T8451] [ 310.192096][ T8451] Local variable ----smsr@asix_mdio_write created at: [ 310.192096][ T8451] asix_mdio_write+0xce/0xa80 [ 310.192096][ T8451] asix_mdio_write+0xce/0xa80 [ 310.192096][ T8451] ===================================================== 17:49:38 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f05000030000080240001"], 0x1a0}}, 0x0) [ 310.551584][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 310.562228][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to enable software MII access [ 310.578208][T10486] loop2: detected capacity change from 0 to 8 [ 310.608527][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0000: -71 [ 310.618667][ T8451] ===================================================== [ 310.625601][ T8451] BUG: KMSAN: uninit-value in asix_mdio_write+0x512/0xa80 [ 310.628601][ T8451] CPU: 1 PID: 8451 Comm: kworker/1:3 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 310.628601][ T8451] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 310.652269][ T8451] Workqueue: usb_hub_wq hub_event [ 310.652269][ T8451] Call Trace: [ 310.652269][ T8451] dump_stack+0x24c/0x2e0 [ 310.652269][ T8451] kmsan_report+0xfb/0x1e0 [ 310.652269][ T8451] __msan_warning+0x5c/0xa0 [ 310.652269][ T8451] asix_mdio_write+0x512/0xa80 [ 310.652269][ T8451] asix_phy_reset+0xd8/0x300 [ 310.652269][ T8451] ax88172_bind+0x83e/0xc80 [ 310.652269][ T8451] ? asix_resume+0x150/0x150 [ 310.652269][ T8451] usbnet_probe+0x113f/0x3e10 [ 310.652269][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 310.652269][ T8451] ? kmsan_internal_set_origin+0x85/0xc0 [ 310.652269][ T8451] ? usbnet_disconnect+0x6b0/0x6b0 [ 310.712173][ T8451] usb_probe_interface+0xfcc/0x1520 [ 310.712173][ T8451] ? usb_register_driver+0x900/0x900 [ 310.712173][ T8451] really_probe+0xe15/0x24d0 [ 310.712173][ T8451] driver_probe_device+0x29d/0x3a0 [ 310.712173][ T8451] __device_attach_driver+0x63f/0x830 [ 310.712173][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 310.712173][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 310.712173][ T8451] __device_attach+0x56a/0x890 [ 310.712173][ T8451] device_initial_probe+0x4a/0x60 [ 310.712173][ T8451] bus_probe_device+0x17e/0x3d0 [ 310.712173][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 310.712173][ T8451] device_add+0x2c15/0x31d0 [ 310.712173][ T8451] usb_set_configuration+0x3872/0x3eb0 [ 310.712173][ T8451] ? usb_set_configuration+0xae1/0x3eb0 [ 310.712173][ T8451] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 310.712173][ T8451] usb_generic_driver_probe+0x138/0x300 [ 310.712173][ T8451] ? usb_choose_configuration+0xee0/0xee0 [ 310.712173][ T8451] usb_probe_device+0x317/0x570 [ 310.712173][ T8451] ? usb_register_device_driver+0x590/0x590 [ 310.812500][ T8451] really_probe+0xe15/0x24d0 [ 310.812500][ T8451] driver_probe_device+0x29d/0x3a0 [ 310.812500][ T8451] __device_attach_driver+0x63f/0x830 [ 310.812500][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 310.812500][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 310.812500][ T8451] __device_attach+0x56a/0x890 [ 310.812500][ T8451] device_initial_probe+0x4a/0x60 [ 310.812500][ T8451] bus_probe_device+0x17e/0x3d0 [ 310.812500][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 310.812500][ T8451] device_add+0x2c15/0x31d0 [ 310.812500][ T8451] usb_new_device+0x1bd4/0x2a30 [ 310.812500][ T8451] hub_event+0x5b99/0x8870 [ 310.812500][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 310.812500][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 310.812500][ T8451] ? led_work+0x780/0x780 [ 310.812500][ T8451] process_one_work+0x1219/0x1fe0 [ 310.812500][ T8451] worker_thread+0x10ec/0x2340 [ 310.812500][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 310.812500][ T8451] kthread+0x521/0x560 [ 310.812500][ T8451] ? process_one_work+0x1fe0/0x1fe0 [ 310.812500][ T8451] ? kthread_blkcg+0x110/0x110 [ 310.812500][ T8451] ret_from_fork+0x1f/0x30 [ 310.812500][ T8451] [ 310.812500][ T8451] Local variable ----smsr@asix_mdio_write created at: [ 310.812500][ T8451] asix_mdio_write+0xce/0xa80 [ 310.812500][ T8451] asix_mdio_write+0xce/0xa80 [ 310.812500][ T8451] ===================================================== 17:49:38 executing program 3: perf_event_open(&(0x7f000001d000)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x61c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x803, 0x0) getpeername$l2tp(r1, &(0x7f0000000080)={0x2, 0x0, @initdev}, &(0x7f00000000c0)=0x10) sendmsg$NBD_CMD_DISCONNECT(r1, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r1, &(0x7f00000001c0)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r0, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000500)=@newlink={0x48, 0x10, 0xe3b, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x501}, [@IFLA_LINKINFO={0x20, 0x12, 0x0, 0x1, @ip6gretap={{0xe}, {0xc, 0x2, 0x0, 0x1, [@IFLA_GRE_LINK={0x8, 0x1, r2}]}}}, @IFLA_NUM_TX_QUEUES={0x8, 0x1f, 0x7}]}, 0x48}}, 0x0) ioctl$sock_SIOCADDDLCI(0xffffffffffffffff, 0x8980, &(0x7f0000000280)={'ip6gre0\x00', 0xe7}) r3 = bpf$MAP_CREATE(0x0, &(0x7f0000000040)={0x0, 0x4, 0x4}, 0x40) bpf$BPF_GET_MAP_INFO(0x2, 0x0, 0x0) fcntl$F_GET_RW_HINT(r3, 0x40b, 0x0) [ 310.977740][ T8838] usb 4-1: USB disconnect, device number 2 [ 311.171495][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 311.181839][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to enable software MII access [ 311.243392][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0000: -71 [ 311.253670][ T8451] ===================================================== [ 311.260603][ T8451] BUG: KMSAN: uninit-value in asix_mdio_write+0x512/0xa80 [ 311.263513][ T8451] CPU: 1 PID: 8451 Comm: kworker/1:3 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 311.263513][ T8451] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 311.282290][ T8451] Workqueue: usb_hub_wq hub_event [ 311.282290][ T8451] Call Trace: [ 311.282290][ T8451] dump_stack+0x24c/0x2e0 [ 311.282290][ T8451] kmsan_report+0xfb/0x1e0 [ 311.282290][ T8451] __msan_warning+0x5c/0xa0 [ 311.282290][ T8451] asix_mdio_write+0x512/0xa80 [ 311.282290][ T8451] asix_phy_reset+0xd8/0x300 [ 311.282290][ T8451] ax88172_bind+0x83e/0xc80 [ 311.282290][ T8451] ? asix_resume+0x150/0x150 [ 311.282290][ T8451] usbnet_probe+0x113f/0x3e10 [ 311.282290][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 311.282290][ T8451] ? kmsan_internal_set_origin+0x85/0xc0 [ 311.282290][ T8451] ? usbnet_disconnect+0x6b0/0x6b0 [ 311.282290][ T8451] usb_probe_interface+0xfcc/0x1520 [ 311.282290][ T8451] ? usb_register_driver+0x900/0x900 [ 311.282290][ T8451] really_probe+0xe15/0x24d0 [ 311.282290][ T8451] driver_probe_device+0x29d/0x3a0 [ 311.282290][ T8451] __device_attach_driver+0x63f/0x830 [ 311.372588][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 311.372588][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 311.372588][ T8451] __device_attach+0x56a/0x890 [ 311.387264][ T8451] device_initial_probe+0x4a/0x60 [ 311.387264][ T8451] bus_probe_device+0x17e/0x3d0 [ 311.387264][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 311.387264][ T8451] device_add+0x2c15/0x31d0 [ 311.387264][ T8451] usb_set_configuration+0x3872/0x3eb0 [ 311.387264][ T8451] ? usb_set_configuration+0xae1/0x3eb0 [ 311.387264][ T8451] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 311.387264][ T8451] usb_generic_driver_probe+0x138/0x300 [ 311.432402][ T8451] ? usb_choose_configuration+0xee0/0xee0 [ 311.432402][ T8451] usb_probe_device+0x317/0x570 [ 311.432402][ T8451] ? usb_register_device_driver+0x590/0x590 [ 311.432402][ T8451] really_probe+0xe15/0x24d0 [ 311.432402][ T8451] driver_probe_device+0x29d/0x3a0 [ 311.455080][ T8451] __device_attach_driver+0x63f/0x830 [ 311.455080][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 311.455080][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 311.455080][ T8451] __device_attach+0x56a/0x890 [ 311.455080][ T8451] device_initial_probe+0x4a/0x60 [ 311.455080][ T8451] bus_probe_device+0x17e/0x3d0 [ 311.455080][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 311.455080][ T8451] device_add+0x2c15/0x31d0 [ 311.455080][ T8451] usb_new_device+0x1bd4/0x2a30 [ 311.455080][ T8451] hub_event+0x5b99/0x8870 [ 311.455080][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 311.455080][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 311.455080][ T8451] ? led_work+0x780/0x780 [ 311.455080][ T8451] process_one_work+0x1219/0x1fe0 [ 311.455080][ T8451] worker_thread+0x10ec/0x2340 [ 311.455080][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 311.455080][ T8451] kthread+0x521/0x560 17:49:39 executing program 2: syz_mount_image$iso9660(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5, 0x0, &(0x7f0000000b40), 0x0, &(0x7f0000000040)={[{@mode={'mode', 0x3d, 0x200}}, {@utf8}, {@cruft}]}) [ 311.455080][ T8451] ? process_one_work+0x1fe0/0x1fe0 [ 311.455080][ T8451] ? kthread_blkcg+0x110/0x110 [ 311.455080][ T8451] ret_from_fork+0x1f/0x30 [ 311.455080][ T8451] [ 311.455080][ T8451] Local variable ----smsr@asix_mdio_write created at: [ 311.455080][ T8451] asix_mdio_write+0xce/0xa80 [ 311.455080][ T8451] asix_mdio_write+0xce/0xa80 [ 311.455080][ T8451] ===================================================== [ 311.758014][T10497] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. 17:49:39 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f05000030000080240001"], 0x1a0}}, 0x0) 17:49:39 executing program 0: r0 = socket$alg(0x26, 0x5, 0x0) bind$alg(r0, &(0x7f0000000000)={0x26, 'hash\x00', 0x0, 0x0, 'poly1305-simd\x00'}, 0x58) r1 = accept4(r0, 0x0, 0x0, 0x0) sendmmsg$inet6(r1, &(0x7f0000004a40)=[{{0x0, 0x0, &(0x7f0000001bc0)=[{&(0x7f0000001f40)="40f7580ec9a97e60c5d60c2ce6be580d90afee55dc070858eb4fa866fb4ea98a830929ed329249f0868c1fa90ce70a57d385fee190bfcbf0c32959e2c624c584c1479c38734dbb08d6abb26e9e33b40b5a0c6bc12c75a4f6eaed1f1e2dd304107a732391aedac2b003c3cf0479086272eda51337d00de5578b696ca987c05b56b3e592a91541311c54d6a47868285610f6fcf516ae346af5e0b276b93f1301f09fe20f09663076d845f946841ce342d27de6642bf2c74a705a78b796d97efdd308426b62223c7cc13cce7b55bb597793", 0xd0}], 0x1}}], 0x1, 0x4000010) [ 312.230751][T10505] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. [ 312.419122][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 312.429711][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to enable software MII access [ 312.509302][T10506] device ip6gretap1 entered promiscuous mode [ 312.511297][T10502] ISOFS: Unable to identify CD-ROM format. [ 312.575545][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0000: -71 [ 312.586277][ T8451] ===================================================== [ 312.593214][ T8451] BUG: KMSAN: uninit-value in asix_mdio_write+0x512/0xa80 [ 312.595623][ T8451] CPU: 1 PID: 8451 Comm: kworker/1:3 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 312.602328][ T8451] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 312.602328][ T8451] Workqueue: usb_hub_wq hub_event [ 312.602328][ T8451] Call Trace: [ 312.602328][ T8451] dump_stack+0x24c/0x2e0 [ 312.602328][ T8451] kmsan_report+0xfb/0x1e0 [ 312.633101][ T8451] __msan_warning+0x5c/0xa0 [ 312.633101][ T8451] asix_mdio_write+0x512/0xa80 [ 312.633101][ T8451] asix_phy_reset+0xd8/0x300 [ 312.633101][ T8451] ax88172_bind+0x83e/0xc80 [ 312.633101][ T8451] ? asix_resume+0x150/0x150 [ 312.660625][ T8451] usbnet_probe+0x113f/0x3e10 [ 312.660625][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 312.660625][ T8451] ? kmsan_internal_set_origin+0x85/0xc0 [ 312.660625][ T8451] ? usbnet_disconnect+0x6b0/0x6b0 [ 312.660625][ T8451] usb_probe_interface+0xfcc/0x1520 [ 312.660625][ T8451] ? usb_register_driver+0x900/0x900 [ 312.688030][ T8451] really_probe+0xe15/0x24d0 [ 312.688030][ T8451] driver_probe_device+0x29d/0x3a0 [ 312.688030][ T8451] __device_attach_driver+0x63f/0x830 [ 312.688030][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 312.688030][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 312.688030][ T8451] __device_attach+0x56a/0x890 [ 312.688030][ T8451] device_initial_probe+0x4a/0x60 [ 312.688030][ T8451] bus_probe_device+0x17e/0x3d0 [ 312.732169][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 312.739957][ T8451] device_add+0x2c15/0x31d0 [ 312.739957][ T8451] usb_set_configuration+0x3872/0x3eb0 [ 312.739957][ T8451] ? usb_set_configuration+0xae1/0x3eb0 [ 312.739957][ T8451] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 312.739957][ T8451] usb_generic_driver_probe+0x138/0x300 [ 312.739957][ T8451] ? usb_choose_configuration+0xee0/0xee0 [ 312.739957][ T8451] usb_probe_device+0x317/0x570 [ 312.739957][ T8451] ? usb_register_device_driver+0x590/0x590 [ 312.739957][ T8451] really_probe+0xe15/0x24d0 [ 312.739957][ T8451] driver_probe_device+0x29d/0x3a0 [ 312.739957][ T8451] __device_attach_driver+0x63f/0x830 [ 312.739957][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 312.739957][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 312.739957][ T8451] __device_attach+0x56a/0x890 [ 312.739957][ T8451] device_initial_probe+0x4a/0x60 [ 312.739957][ T8451] bus_probe_device+0x17e/0x3d0 [ 312.739957][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 312.739957][ T8451] device_add+0x2c15/0x31d0 [ 312.739957][ T8451] usb_new_device+0x1bd4/0x2a30 [ 312.739957][ T8451] hub_event+0x5b99/0x8870 [ 312.739957][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 312.739957][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 312.739957][ T8451] ? led_work+0x780/0x780 [ 312.739957][ T8451] process_one_work+0x1219/0x1fe0 [ 312.739957][ T8451] worker_thread+0x10ec/0x2340 [ 312.739957][ T8451] ? kmsan_get_metadata+0x116/0x180 17:49:40 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f09"], 0x1a0}}, 0x0) [ 312.739957][ T8451] kthread+0x521/0x560 [ 312.739957][ T8451] ? process_one_work+0x1fe0/0x1fe0 [ 312.739957][ T8451] ? kthread_blkcg+0x110/0x110 [ 312.739957][ T8451] ret_from_fork+0x1f/0x30 [ 312.739957][ T8451] [ 312.739957][ T8451] Local variable ----smsr@asix_mdio_write created at: [ 312.739957][ T8451] asix_mdio_write+0xce/0xa80 [ 312.739957][ T8451] asix_mdio_write+0xce/0xa80 [ 312.739957][ T8451] ===================================================== 17:49:41 executing program 0: r0 = syz_init_net_socket$bt_hci(0x1f, 0x3, 0x1) r1 = socket$key(0xf, 0x3, 0x2) sendmsg$key(0xffffffffffffffff, &(0x7f00005f5000)={0x0, 0x0, &(0x7f00008feff0)={&(0x7f0000000340)=ANY=[@ANYBLOB="020000000a0000000000000000000000030000000000000002000000e02ce5e00922b0000001000000000000000002000100000000000000000000000000030000000000000002f9382761f2e16b4e8fd850794a80f2ffe127d373def41eb54f5c58ee846a3b42c9dc3ad49fefe88bb7b1843b0f25828a4954cda3ba53300ee9bd6de2b15a079409e6ec08a91f6333e4ad7d6f25d0ca3b4865c17d9b0158516757426785dcd973c8ce71edd678209b262f2c5a3301480192b4af374e810d7fdcbf28805c71153dd4650fb12945ea8e9d63df9e6ea72810ec962443dd6d9741ad6d9fc51bf75eb6d622bd50c44e4958fb763a7fa8dea4bb698c450606592a8a7de72d45e9b7d0709e7d3db65fd855ccfa760de44b1d6af68032e480093261a384f4f6c9043507123e6967775eaee933e5493861ac000000000000000000"], 0x50}}, 0x0) bind$bt_hci(r0, &(0x7f0000000040)={0x1f, 0xffff, 0x3}, 0x6) sendmsg$key(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000001c0)=ANY=[@ANYBLOB="02179308020006002cbd7000fbdbdf25afc801000000000000001717516f1c71dba8b874a07f76fb6d986579c91e34594e"], 0x10}}, 0x4) r2 = bpf$PROG_LOAD(0x5, &(0x7f0000b7a000)={0x1, 0x4, &(0x7f0000000240)=@framed={{}, [@alu={0x8000000201a7fe3, 0x0, 0x7, 0x61, 0x0, 0x43}]}, &(0x7f0000000000)='GPL\x00', 0x5, 0x3e2, &(0x7f00001a7f05)=""/251}, 0x34) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f00000000c0)={r2, 0xc0, &(0x7f0000000280)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ""/16, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, 0x10) r4 = bpf$BPF_PROG_GET_FD_BY_ID(0xd, &(0x7f0000000000)={r3}, 0xc) setsockopt$sock_attach_bpf(0xffffffffffffffff, 0x1, 0x32, &(0x7f0000000040)=r4, 0x4) r5 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r5, &(0x7f0000000040)=ANY=[], 0x6db6e559) mmap(&(0x7f0000000000/0x4000)=nil, 0x4000, 0x1, 0x10012, r5, 0x0) write$binfmt_misc(r0, &(0x7f0000000000)={'syz0', "7a7925e639"}, 0x9) 17:49:41 executing program 2: perf_event_open(&(0x7f0000000240)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8001}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$inet6_sctp(0xa, 0x1, 0x84) setsockopt$inet_sctp6_SCTP_MAXSEG(r0, 0x84, 0xd, &(0x7f00000000c0)=@assoc_value={0x0, 0xa4c}, 0x8) ioctl$SECCOMP_IOCTL_NOTIF_RECV(0xffffffffffffffff, 0xc0502100, &(0x7f00000002c0)={0x0, 0x0}) r2 = openat(0xffffffffffffffff, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) perf_event_open(&(0x7f0000000180)={0x5, 0x80, 0xfc, 0x9, 0xff, 0x6, 0x0, 0xff, 0x100c, 0x4, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x6bbf, 0x1, @perf_bp={&(0x7f0000000040), 0xd}, 0x8106, 0x3, 0x2, 0x2, 0x6, 0x6, 0x0, 0x0, 0xfff, 0x0, 0x2}, r1, 0xffffffffffffffff, r2, 0x2) bind$inet6(r0, &(0x7f00004b8fe4)={0xa, 0x4e23, 0x0, @loopback}, 0x1c) sendto$inet6(r0, &(0x7f0000847fff)='X', 0x14be6, 0x0, &(0x7f000005ffe4)={0xa, 0x4e23, 0x0, @loopback}, 0x1c) close(0xffffffffffffffff) r3 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r3, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000400)=ANY=[@ANYBLOB="2800000010000108000001000000000000000000", @ANYRES32=0x0, @ANYBLOB="478800000000000008001b0000000000c89f642cb726901edc711205001f2c1d9e14b2db9bbd7ab301951dc9a2ce78b242b86a112965ed6ffe7e19e5dc74906c8061b09903e332a9a2ed77d117404c7111a502af0b647eefb9895d4e11c0e11223d705096ed883976ada0db6c66b059af61644237bc5102f45623ad9691f1322b9030000005db1c99cd23968bd6dd0e4b21647ed5fb61141031e11612cc0469de436da2e7bb802f8654acd1b05c18fd531e6fa2b27fe7ec688c5f88b9744b2b2d76bc3de2326df6872719aa9e2226f2bb1088d4b0cff1c14a2961dafe6dbdadb646f0f7498658ea9a238"], 0x28}}, 0x0) r4 = socket$phonet(0x23, 0x2, 0x1) recvfrom(r4, &(0x7f0000000540)=""/198, 0xc6, 0x2000, &(0x7f0000000340)=@pppol2tpin6={0x18, 0x1, {0x0, 0xffffffffffffffff, 0x3, 0x0, 0x0, 0x3, {0xa, 0x4e21, 0x6, @local, 0x400}}}, 0x80) r5 = open(0x0, 0x0, 0x9) getsockopt$inet_sctp6_SCTP_GET_ASSOC_ID_LIST(r0, 0x84, 0x1d, &(0x7f0000000640)=ANY=[@ANYBLOB="00403ca047de29533c4a1b805773f8efff006483822c316f97b9b2c123efbd7ee56373c7c9530eabe87d0e858c46f0e71b473ca9be185b21c571aaa44db6a5f4dac6ab3a06f34b566ec8e7c8b52539bd1f33e41131f2ab", @ANYRES32=0x0, @ANYRES32=0x0, @ANYRES32=0x0, @ANYRES32=0x0, @ANYRES32=0x0, @ANYRES32=0x0], &(0x7f0000000200)=0x1c) pipe(0x0) ioctl$ASHMEM_GET_SIZE(r5, 0x7704, 0x0) 17:49:41 executing program 3: mkdir(&(0x7f0000000240)='./file1\x00', 0x0) syz_mount_image$nfs4(0x0, &(0x7f00000001c0)='./file0\x00', 0x0, 0x0, 0x0, 0x0, 0x0) mkdir(&(0x7f0000000180)='./bus\x00', 0x0) mount$overlay(0x0, &(0x7f00000000c0)='./bus\x00', &(0x7f0000000080), 0x0, &(0x7f0000000300)=ANY=[@ANYBLOB='workdir=./file1,lowerdir=./file0,upperdir=./bus,xino=on']) mount$overlay(0x0, &(0x7f0000000040)='./bus\x00', &(0x7f0000000080), 0x0, &(0x7f0000000100)={[{@upperdir={'upperdir', 0x3d, './file0'}}, {@workdir={'workdir', 0x3d, './file1'}}, {@lowerdir={'lowerdir', 0x3d, './bus'}}, {@index_off}]}) chdir(&(0x7f0000000200)='./file0\x00') pivot_root(0x0, &(0x7f0000000140)='./file1\x00') [ 313.639189][T10536] netlink: 36 bytes leftover after parsing attributes in process `syz-executor.1'. [ 313.868342][T10538] overlayfs: workdir is in-use as upperdir/workdir of another mount, accessing files from both mounts will result in undefined behavior. [ 313.879099][T10533] overlayfs: failed to resolve './file0': -2 [ 313.965222][T10540] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 313.973347][T10540] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 314.101399][T10538] overlayfs: failed to resolve './bus': -2 17:49:42 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$wireguard(&(0x7f00000000c0), 0xffffffffffffffff) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000000100)={'wg0\x00', 0x0}) sendmsg$WG_CMD_SET_DEVICE(r1, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000480)=ANY=[@ANYBLOB="a0010000", @ANYRES16=r2, @ANYBLOB="010000000000000000000100000008000100", @ANYRES32=r3, @ANYBLOB="08000500010000005801088024010080200004000a000000e60000000000000000000000000000000000000000000000240002007fb159595f574a5388674b86cdccc8b8d77a8f79d021dddbf937015d3869a8882400010000000000000000000000000000000000000000000000000000cb6d00000000f6af00098028000080060001000a00000014000200ff02000000000000000000000000000105000300030000001c00008006000100020000000800020000000000050003000100000040000080060001000a00000014000200000000000000000000000000000000010500030000000000060001000200000008000200ffffffff050003000100000028000080060001000a00000014000200fe8000000000000000000000000000aa0500030000000000060005005f0500003000008024000100975c9d81c983c8209ee781254b899f8ed925ae9f09"], 0x1a0}}, 0x0) [ 314.201383][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 314.211734][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to enable software MII access [ 314.352456][ T8451] asix 1-1:0.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0000: -71 [ 314.362661][ T8451] ===================================================== [ 314.369594][ T8451] BUG: KMSAN: uninit-value in asix_mdio_write+0x512/0xa80 [ 314.372574][ T8451] CPU: 1 PID: 8451 Comm: kworker/1:3 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 314.372574][ T8451] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 314.372574][ T8451] Workqueue: usb_hub_wq hub_event [ 314.372574][ T8451] Call Trace: [ 314.372574][ T8451] dump_stack+0x24c/0x2e0 [ 314.372574][ T8451] kmsan_report+0xfb/0x1e0 [ 314.372574][ T8451] __msan_warning+0x5c/0xa0 [ 314.372574][ T8451] asix_mdio_write+0x512/0xa80 [ 314.372574][ T8451] asix_phy_reset+0xd8/0x300 [ 314.372574][ T8451] ax88172_bind+0x83e/0xc80 [ 314.372574][ T8451] ? asix_resume+0x150/0x150 [ 314.372574][ T8451] usbnet_probe+0x113f/0x3e10 [ 314.372574][ T8451] ? kmsan_get_metadata+0x116/0x180 [ 314.372574][ T8451] ? kmsan_internal_set_origin+0x85/0xc0 [ 314.372574][ T8451] ? usbnet_disconnect+0x6b0/0x6b0 [ 314.372574][ T8451] usb_probe_interface+0xfcc/0x1520 [ 314.372574][ T8451] ? usb_register_driver+0x900/0x900 [ 314.372574][ T8451] really_probe+0xe15/0x24d0 [ 314.372574][ T8451] driver_probe_device+0x29d/0x3a0 [ 314.372574][ T8451] __device_attach_driver+0x63f/0x830 [ 314.372574][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 314.372574][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 314.372574][ T8451] __device_attach+0x56a/0x890 [ 314.372574][ T8451] device_initial_probe+0x4a/0x60 [ 314.372574][ T8451] bus_probe_device+0x17e/0x3d0 [ 314.372574][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 314.372574][ T8451] device_add+0x2c15/0x31d0 [ 314.372574][ T8451] usb_set_configuration+0x3872/0x3eb0 [ 314.372574][ T8451] ? usb_set_configuration+0xae1/0x3eb0 [ 314.372574][ T8451] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 314.372574][ T8451] usb_generic_driver_probe+0x138/0x300 [ 314.372574][ T8451] ? usb_choose_configuration+0xee0/0xee0 [ 314.372574][ T8451] usb_probe_device+0x317/0x570 [ 314.372574][ T8451] ? usb_register_device_driver+0x590/0x590 [ 314.372574][ T8451] really_probe+0xe15/0x24d0 [ 314.372574][ T8451] driver_probe_device+0x29d/0x3a0 [ 314.372574][ T8451] __device_attach_driver+0x63f/0x830 [ 314.372574][ T8451] bus_for_each_drv+0x2c8/0x3f0 [ 314.372574][ T8451] ? deferred_probe_work_func+0x4d0/0x4d0 [ 314.372574][ T8451] __device_attach+0x56a/0x890 [ 314.372574][ T8451] device_initial_probe+0x4a/0x60 [ 314.372574][ T8451] bus_probe_device+0x17e/0x3d0 [ 314.372574][ T8451] ? kmsan_get_shadow_origin_ptr+0x84/0xb0