add native code support