static int set_activeSceneChanged(IntPtr L)
    {
        try
        {
            EventObject arg0 = null;

            if (LuaDLL.lua_isuserdata(L, 2) != 0)
            {
                arg0 = (EventObject)ToLua.ToObject(L, 2);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "The event 'UnityEngine.SceneManagement.SceneManager.activeSceneChanged' can only appear on the left hand side of += or -= when used outside of the type 'UnityEngine.SceneManagement.SceneManager'"));
            }

            if (arg0.op == EventOp.Add)
            {
                UnityEngine.Events.UnityAction <UnityEngine.SceneManagement.Scene, UnityEngine.SceneManagement.Scene> ev = (UnityEngine.Events.UnityAction <UnityEngine.SceneManagement.Scene, UnityEngine.SceneManagement.Scene>) DelegateTraits <UnityEngine.Events.UnityAction <UnityEngine.SceneManagement.Scene, UnityEngine.SceneManagement.Scene> > .Create(arg0.func);

                UnityEngine.SceneManagement.SceneManager.activeSceneChanged += ev;
            }
            else if (arg0.op == EventOp.Sub)
            {
                UnityEngine.Events.UnityAction <UnityEngine.SceneManagement.Scene, UnityEngine.SceneManagement.Scene> ev = (UnityEngine.Events.UnityAction <UnityEngine.SceneManagement.Scene, UnityEngine.SceneManagement.Scene>)LuaMisc.GetEventHandler(null, typeof(UnityEngine.SceneManagement.SceneManager), "activeSceneChanged");
                Delegate[] ds    = ev.GetInvocationList();
                LuaState   state = LuaState.Get(L);

                for (int i = 0; i < ds.Length; i++)
                {
                    ev = (UnityEngine.Events.UnityAction <UnityEngine.SceneManagement.Scene, UnityEngine.SceneManagement.Scene>)ds[i];
                    LuaDelegate ld = ev.Target as LuaDelegate;

                    if (ld != null && ld.func == arg0.func)
                    {
                        UnityEngine.SceneManagement.SceneManager.activeSceneChanged -= ev;
                        state.DelayDispose(ld.func);
                        break;
                    }
                }

                arg0.func.Dispose();
            }

            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
    static int set_onBeforeRender(IntPtr L)
    {
        try
        {
            EventObject arg0 = null;

            if (LuaDLL.lua_isuserdata(L, 2) != 0)
            {
                arg0 = (EventObject)ToLua.ToObject(L, 2);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "The event 'UnityEngine.Application.onBeforeRender' can only appear on the left hand side of += or -= when used outside of the type 'UnityEngine.Application'"));
            }

            if (arg0.op == EventOp.Add)
            {
                UnityEngine.Events.UnityAction ev = (UnityEngine.Events.UnityAction)DelegateFactory.CreateDelegate(typeof(UnityEngine.Events.UnityAction), arg0.func);
                UnityEngine.Application.onBeforeRender += ev;
            }
            else if (arg0.op == EventOp.Sub)
            {
                UnityEngine.Events.UnityAction ev = (UnityEngine.Events.UnityAction)LuaMisc.GetEventHandler(null, typeof(UnityEngine.Application), "onBeforeRender");
                Delegate[] ds    = ev.GetInvocationList();
                LuaState   state = LuaState.Get(L);

                for (int i = 0; i < ds.Length; i++)
                {
                    ev = (UnityEngine.Events.UnityAction)ds[i];
                    LuaDelegate ld = ev.Target as LuaDelegate;

                    if (ld != null && ld.func == arg0.func)
                    {
                        UnityEngine.Application.onBeforeRender -= ev;
                        state.DelayDispose(ld.func);
                        break;
                    }
                }

                arg0.func.Dispose();
            }

            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }