support extend from native object