improved native checking