static void n_loadNativeAd_Landroid_app_Activity_Lcom_mopub_nativeads_CustomEventNative_CustomEventNativeListener_Ljava_util_Map_Ljava_util_Map_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, IntPtr native_p1, IntPtr native_p2, IntPtr native_p3)
        {
            global::Com.Mopub.Nativeads.CustomEventNative __this = global::Java.Lang.Object.GetObject <global::Com.Mopub.Nativeads.CustomEventNative> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            global::Android.App.Activity p0 = global::Java.Lang.Object.GetObject <global::Android.App.Activity> (native_p0, JniHandleOwnership.DoNotTransfer);
            global::Com.Mopub.Nativeads.CustomEventNative.ICustomEventNativeListener p1 = (global::Com.Mopub.Nativeads.CustomEventNative.ICustomEventNativeListener)global::Java.Lang.Object.GetObject <global::Com.Mopub.Nativeads.CustomEventNative.ICustomEventNativeListener> (native_p1, JniHandleOwnership.DoNotTransfer);
            var p2 = global::Android.Runtime.JavaDictionary <string, global::Java.Lang.Object> .FromJniHandle(native_p2, JniHandleOwnership.DoNotTransfer);

            var p3 = global::Android.Runtime.JavaDictionary <string, string> .FromJniHandle(native_p3, JniHandleOwnership.DoNotTransfer);

            __this.loadNativeAd(p0, p1, p2, p3);
        }
        protected override unsafe void loadNativeAd(global::Android.App.Activity p0, global::Com.Mopub.Nativeads.CustomEventNative.ICustomEventNativeListener p1, global::System.Collections.Generic.IDictionary <string, global::Java.Lang.Object> p2, global::System.Collections.Generic.IDictionary <string, string> p3)
        {
            if (id_loadNativeAd_Landroid_app_Activity_Lcom_mopub_nativeads_CustomEventNative_CustomEventNativeListener_Ljava_util_Map_Ljava_util_Map_ == IntPtr.Zero)
            {
                id_loadNativeAd_Landroid_app_Activity_Lcom_mopub_nativeads_CustomEventNative_CustomEventNativeListener_Ljava_util_Map_Ljava_util_Map_ = JNIEnv.GetMethodID(class_ref, "loadNativeAd", "(Landroid/app/Activity;Lcom/mopub/nativeads/CustomEventNative$CustomEventNativeListener;Ljava/util/Map;Ljava/util/Map;)V");
            }
            IntPtr native_p2 = global::Android.Runtime.JavaDictionary <string, global::Java.Lang.Object> .ToLocalJniHandle(p2);

            IntPtr native_p3 = global::Android.Runtime.JavaDictionary <string, string> .ToLocalJniHandle(p3);

            try {
                JValue *__args = stackalloc JValue [4];
                __args [0] = new JValue(p0);
                __args [1] = new JValue(p1);
                __args [2] = new JValue(native_p2);
                __args [3] = new JValue(native_p3);
                JNIEnv.CallVoidMethod(((global::Java.Lang.Object) this).Handle, id_loadNativeAd_Landroid_app_Activity_Lcom_mopub_nativeads_CustomEventNative_CustomEventNativeListener_Ljava_util_Map_Ljava_util_Map_, __args);
            } finally {
                JNIEnv.DeleteLocalRef(native_p2);
                JNIEnv.DeleteLocalRef(native_p3);
            }
        }
 static void n_OnNativeAdFailed_Lcom_mopub_nativeads_NativeErrorCode_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
 {
     global::Com.Mopub.Nativeads.CustomEventNative.ICustomEventNativeListener __this = global::Java.Lang.Object.GetObject <global::Com.Mopub.Nativeads.CustomEventNative.ICustomEventNativeListener> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Com.Mopub.Nativeads.NativeErrorCode p0 = global::Java.Lang.Object.GetObject <global::Com.Mopub.Nativeads.NativeErrorCode> (native_p0, JniHandleOwnership.DoNotTransfer);
     __this.OnNativeAdFailed(p0);
 }
 protected abstract void loadNativeAd(global::Android.App.Activity p0, global::Com.Mopub.Nativeads.CustomEventNative.ICustomEventNativeListener p1, global::System.Collections.Generic.IDictionary <string, global::Java.Lang.Object> p2, global::System.Collections.Generic.IDictionary <string, string> p3);