public T1 Test2 <T1, T2, T3>(T1 a, out T2 b, ref T3 c)
    {
        //------------------------------------------
        DelegateBridge _Hotfix0_Test = HotfixCalc.__Hotfix0_Test2;

        if (_Hotfix0_Test != null)
        {
            _Hotfix0_Test.InvokeSessionStart();
            _Hotfix0_Test.InParam <HotfixCalc>(this);
            _Hotfix0_Test.InParam <T1>(a);
            _Hotfix0_Test.InParam <T3>(c);
            _Hotfix0_Test.Invoke(3);
            _Hotfix0_Test.OutParam <T2>(1, out b);
            _Hotfix0_Test.OutParam <T3>(2, out c);
            return(_Hotfix0_Test.InvokeSessionEndWithResult <T1>());
        }
        //------------------------------------------
        b = default(T2);
        return(a);
    }