1 
2 // InternalFunction_Impl_ctors.h -- generated helper code for InternalFunction__ctors.h
3 //                                  see rcpp-scripts repo for generator script
4 //                                  also hand-edited so check generator state
5 //
6 // Copyright (C) 2010 - 2020  Dirk Eddelbuettel and Romain Francois
7 //
8 // This file is part of Rcpp.
9 //
10 // Rcpp is free software: you can redistribute it and/or modify it
11 // under the terms of the GNU General Public License as published by
12 // the Free Software Foundation, either version 2 of the License, or
13 // (at your option) any later version.
14 //
15 // Rcpp is distributed in the hope that it will be useful, but
16 // WITHOUT ANY WARRANTY; without even the implied warranty of
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 // GNU General Public License for more details.
19 //
20 // You should have received a copy of the GNU General Public License
21 // along with Rcpp.  If not, see <http://www.gnu.org/licenses/>.
22 
23 #ifndef Rcpp__generated__InternalFunction_Impl_ctors_h
24 #define Rcpp__generated__InternalFunction_Impl_ctors_h
25 
26     template <typename RESULT_TYPE>
InternalFunction_Impl(RESULT_TYPE (* fun)(void))27     InternalFunction_Impl(RESULT_TYPE (*fun)(void)) {
28         set(XPtr<CppFunction0<RESULT_TYPE> >(new CppFunction0<RESULT_TYPE>(fun), true));
29     }
30 
31 
32 
33     template <typename RESULT_TYPE,typename U0>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0))34     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0)) {
35         set(XPtr<CppFunction1<RESULT_TYPE,U0> >(new CppFunction1<RESULT_TYPE,U0>(fun), true));
36     }
37 
38 
39 
40     template <typename RESULT_TYPE,typename U0, typename U1>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1))41     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1)) {
42         set(XPtr<CppFunction2<RESULT_TYPE,U0, U1> >(new CppFunction2<RESULT_TYPE,U0, U1>(fun), true));
43     }
44 
45 
46 
47     template <typename RESULT_TYPE,typename U0, typename U1, typename U2>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2))48     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2)) {
49         set(XPtr<CppFunction3<RESULT_TYPE,U0, U1, U2> >(new CppFunction3<RESULT_TYPE,U0, U1, U2>(fun), true));
50     }
51 
52 
53 
54     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3))55     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3)) {
56         set(XPtr<CppFunction4<RESULT_TYPE,U0, U1, U2, U3> >(new CppFunction4<RESULT_TYPE,U0, U1, U2, U3>(fun), true));
57     }
58 
59 
60 
61     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4))62     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4)) {
63         set(XPtr<CppFunction5<RESULT_TYPE,U0, U1, U2, U3, U4> >(new CppFunction5<RESULT_TYPE,U0, U1, U2, U3, U4>(fun), true));
64     }
65 
66 
67 
68     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5))69     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5)) {
70         set(XPtr<CppFunction6<RESULT_TYPE,U0, U1, U2, U3, U4, U5> >(new CppFunction6<RESULT_TYPE,U0, U1, U2, U3, U4, U5>(fun), true));
71     }
72 
73 
74 
75     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6))76     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6)) {
77         set(XPtr<CppFunction7<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6> >(new CppFunction7<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6>(fun), true));
78     }
79 
80 
81 
82     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7))83     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7)) {
84         set(XPtr<CppFunction8<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7> >(new CppFunction8<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7>(fun), true));
85     }
86 
87 
88 
89     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8))90     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8)) {
91         set(XPtr<CppFunction9<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8> >(new CppFunction9<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8>(fun), true));
92     }
93 
94 
95 
96     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9))97     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9)) {
98         set(XPtr<CppFunction10<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9> >(new CppFunction10<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9>(fun), true));
99     }
100 
101 
102 
103     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10))104     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10)) {
105         set(XPtr<CppFunction11<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10> >(new CppFunction11<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10>(fun), true));
106     }
107 
108 
109 
110     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11))111     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11)) {
112         set(XPtr<CppFunction12<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11> >(new CppFunction12<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11>(fun), true));
113     }
114 
115 
116 
117     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12))118     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12)) {
119         set(XPtr<CppFunction13<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12> >(new CppFunction13<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12>(fun), true));
120     }
121 
122 
123 
124     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13))125     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13)) {
126         set(XPtr<CppFunction14<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13> >(new CppFunction14<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13>(fun), true));
127     }
128 
129 
130 
131     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14))132     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14)) {
133         set(XPtr<CppFunction15<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14> >(new CppFunction15<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14>(fun), true));
134     }
135 
136 
137 
138     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15))139     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15)) {
140         set(XPtr<CppFunction16<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15> >(new CppFunction16<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15>(fun), true));
141     }
142 
143 
144 
145     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16))146     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16)) {
147         set(XPtr<CppFunction17<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16> >(new CppFunction17<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16>(fun), true));
148     }
149 
150 
151 
152     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17))153     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17)) {
154         set(XPtr<CppFunction18<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17> >(new CppFunction18<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17>(fun), true));
155     }
156 
157 
158 
159     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18))160     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18)) {
161         set(XPtr<CppFunction19<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18> >(new CppFunction19<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18>(fun), true));
162     }
163 
164 
165 
166     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19))167     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19)) {
168         set(XPtr<CppFunction20<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19> >(new CppFunction20<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19>(fun), true));
169     }
170 
171 
172 
173     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20))174     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20)) {
175         set(XPtr<CppFunction21<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20> >(new CppFunction21<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20>(fun), true));
176     }
177 
178 
179 
180     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21))181     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21)) {
182         set(XPtr<CppFunction22<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21> >(new CppFunction22<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21>(fun), true));
183     }
184 
185 
186 
187     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22))188     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22)) {
189         set(XPtr<CppFunction23<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22> >(new CppFunction23<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22>(fun), true));
190     }
191 
192 
193 
194     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23))195     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23)) {
196         set(XPtr<CppFunction24<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23> >(new CppFunction24<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23>(fun), true));
197     }
198 
199 
200 
201     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24))202     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24)) {
203         set(XPtr<CppFunction25<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24> >(new CppFunction25<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24>(fun), true));
204     }
205 
206 
207 
208     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25))209     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25)) {
210         set(XPtr<CppFunction26<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25> >(new CppFunction26<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25>(fun), true));
211     }
212 
213 
214 
215     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26))216     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26)) {
217         set(XPtr<CppFunction27<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26> >(new CppFunction27<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26>(fun), true));
218     }
219 
220 
221 
222     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27))223     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27)) {
224         set(XPtr<CppFunction28<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27> >(new CppFunction28<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27>(fun), true));
225     }
226 
227 
228 
229     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28))230     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28)) {
231         set(XPtr<CppFunction29<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28> >(new CppFunction29<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28>(fun), true));
232     }
233 
234 
235 
236     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29))237     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29)) {
238         set(XPtr<CppFunction30<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29> >(new CppFunction30<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29>(fun), true));
239     }
240 
241 
242 
243     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30))244     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30)) {
245         set(XPtr<CppFunction31<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30> >(new CppFunction31<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30>(fun), true));
246     }
247 
248 
249 
250     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31))251     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31)) {
252         set(XPtr<CppFunction32<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31> >(new CppFunction32<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31>(fun), true));
253     }
254 
255 
256 
257     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32))258     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32)) {
259         set(XPtr<CppFunction33<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32> >(new CppFunction33<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32>(fun), true));
260     }
261 
262 
263 
264     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33))265     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33)) {
266         set(XPtr<CppFunction34<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33> >(new CppFunction34<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33>(fun), true));
267     }
268 
269 
270 
271     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34))272     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34)) {
273         set(XPtr<CppFunction35<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34> >(new CppFunction35<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34>(fun), true));
274     }
275 
276 
277 
278     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35))279     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35)) {
280         set(XPtr<CppFunction36<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35> >(new CppFunction36<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35>(fun), true));
281     }
282 
283 
284 
285     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36))286     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36)) {
287         set(XPtr<CppFunction37<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36> >(new CppFunction37<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36>(fun), true));
288     }
289 
290 
291 
292     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37))293     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37)) {
294         set(XPtr<CppFunction38<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37> >(new CppFunction38<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37>(fun), true));
295     }
296 
297 
298 
299     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38))300     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38)) {
301         set(XPtr<CppFunction39<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38> >(new CppFunction39<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38>(fun), true));
302     }
303 
304 
305 
306     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39))307     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39)) {
308         set(XPtr<CppFunction40<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39> >(new CppFunction40<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39>(fun), true));
309     }
310 
311 
312 
313     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40))314     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40)) {
315         set(XPtr<CppFunction41<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40> >(new CppFunction41<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40>(fun), true));
316     }
317 
318 
319 
320     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41))321     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41)) {
322         set(XPtr<CppFunction42<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41> >(new CppFunction42<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41>(fun), true));
323     }
324 
325 
326 
327     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42))328     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42)) {
329         set(XPtr<CppFunction43<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42> >(new CppFunction43<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42>(fun), true));
330     }
331 
332 
333 
334     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43))335     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43)) {
336         set(XPtr<CppFunction44<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43> >(new CppFunction44<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43>(fun), true));
337     }
338 
339 
340 
341     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44))342     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44)) {
343         set(XPtr<CppFunction45<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44> >(new CppFunction45<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44>(fun), true));
344     }
345 
346 
347 
348     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45))349     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45)) {
350         set(XPtr<CppFunction46<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45> >(new CppFunction46<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45>(fun), true));
351     }
352 
353 
354 
355     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46))356     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46)) {
357         set(XPtr<CppFunction47<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46> >(new CppFunction47<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46>(fun), true));
358     }
359 
360 
361 
362     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47))363     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47)) {
364         set(XPtr<CppFunction48<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47> >(new CppFunction48<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47>(fun), true));
365     }
366 
367 
368 
369     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48))370     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48)) {
371         set(XPtr<CppFunction49<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48> >(new CppFunction49<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48>(fun), true));
372     }
373 
374 
375 
376     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49))377     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49)) {
378         set(XPtr<CppFunction50<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49> >(new CppFunction50<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49>(fun), true));
379     }
380 
381 
382 
383     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50))384     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50)) {
385         set(XPtr<CppFunction51<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50> >(new CppFunction51<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50>(fun), true));
386     }
387 
388 
389 
390     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51))391     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51)) {
392         set(XPtr<CppFunction52<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51> >(new CppFunction52<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51>(fun), true));
393     }
394 
395 
396 
397     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52))398     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52)) {
399         set(XPtr<CppFunction53<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52> >(new CppFunction53<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52>(fun), true));
400     }
401 
402 
403 
404     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53))405     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53)) {
406         set(XPtr<CppFunction54<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53> >(new CppFunction54<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53>(fun), true));
407     }
408 
409 
410 
411     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54))412     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54)) {
413         set(XPtr<CppFunction55<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54> >(new CppFunction55<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54>(fun), true));
414     }
415 
416 
417 
418     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55))419     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55)) {
420         set(XPtr<CppFunction56<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55> >(new CppFunction56<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55>(fun), true));
421     }
422 
423 
424 
425     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55, typename U56>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55,U56 u56))426     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55, U56 u56)) {
427         set(XPtr<CppFunction57<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56> >(new CppFunction57<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56>(fun), true));
428     }
429 
430 
431 
432     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55, typename U56, typename U57>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55,U56 u56,U57 u57))433     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55, U56 u56, U57 u57)) {
434         set(XPtr<CppFunction58<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57> >(new CppFunction58<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57>(fun), true));
435     }
436 
437 
438 
439     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55, typename U56, typename U57, typename U58>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55,U56 u56,U57 u57,U58 u58))440     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55, U56 u56, U57 u57, U58 u58)) {
441         set(XPtr<CppFunction59<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58> >(new CppFunction59<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58>(fun), true));
442     }
443 
444 
445 
446     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55, typename U56, typename U57, typename U58, typename U59>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55,U56 u56,U57 u57,U58 u58,U59 u59))447     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55, U56 u56, U57 u57, U58 u58, U59 u59)) {
448         set(XPtr<CppFunction60<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59> >(new CppFunction60<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59>(fun), true));
449     }
450 
451 
452 
453     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55, typename U56, typename U57, typename U58, typename U59, typename U60>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55,U56 u56,U57 u57,U58 u58,U59 u59,U60 u60))454     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55, U56 u56, U57 u57, U58 u58, U59 u59, U60 u60)) {
455         set(XPtr<CppFunction61<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60> >(new CppFunction61<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60>(fun), true));
456     }
457 
458 
459 
460     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55, typename U56, typename U57, typename U58, typename U59, typename U60, typename U61>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55,U56 u56,U57 u57,U58 u58,U59 u59,U60 u60,U61 u61))461     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55, U56 u56, U57 u57, U58 u58, U59 u59, U60 u60, U61 u61)) {
462         set(XPtr<CppFunction62<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60, U61> >(new CppFunction62<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60, U61>(fun), true));
463     }
464 
465 
466 
467     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55, typename U56, typename U57, typename U58, typename U59, typename U60, typename U61, typename U62>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55,U56 u56,U57 u57,U58 u58,U59 u59,U60 u60,U61 u61,U62 u62))468     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55, U56 u56, U57 u57, U58 u58, U59 u59, U60 u60, U61 u61, U62 u62)) {
469         set(XPtr<CppFunction63<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60, U61, U62> >(new CppFunction63<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60, U61, U62>(fun), true));
470     }
471 
472 
473 
474     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55, typename U56, typename U57, typename U58, typename U59, typename U60, typename U61, typename U62, typename U63>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55,U56 u56,U57 u57,U58 u58,U59 u59,U60 u60,U61 u61,U62 u62,U63 u63))475     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55, U56 u56, U57 u57, U58 u58, U59 u59, U60 u60, U61 u61, U62 u62, U63 u63)) {
476         set(XPtr<CppFunction64<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60, U61, U62, U63> >(new CppFunction64<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60, U61, U62, U63>(fun), true));
477     }
478 
479 
480 
481     template <typename RESULT_TYPE,typename U0, typename U1, typename U2, typename U3, typename U4, typename U5, typename U6, typename U7, typename U8, typename U9, typename U10, typename U11, typename U12, typename U13, typename U14, typename U15, typename U16, typename U17, typename U18, typename U19, typename U20, typename U21, typename U22, typename U23, typename U24, typename U25, typename U26, typename U27, typename U28, typename U29, typename U30, typename U31, typename U32, typename U33, typename U34, typename U35, typename U36, typename U37, typename U38, typename U39, typename U40, typename U41, typename U42, typename U43, typename U44, typename U45, typename U46, typename U47, typename U48, typename U49, typename U50, typename U51, typename U52, typename U53, typename U54, typename U55, typename U56, typename U57, typename U58, typename U59, typename U60, typename U61, typename U62, typename U63, typename U64>
InternalFunction_Impl(RESULT_TYPE (* fun)(U0 u0,U1 u1,U2 u2,U3 u3,U4 u4,U5 u5,U6 u6,U7 u7,U8 u8,U9 u9,U10 u10,U11 u11,U12 u12,U13 u13,U14 u14,U15 u15,U16 u16,U17 u17,U18 u18,U19 u19,U20 u20,U21 u21,U22 u22,U23 u23,U24 u24,U25 u25,U26 u26,U27 u27,U28 u28,U29 u29,U30 u30,U31 u31,U32 u32,U33 u33,U34 u34,U35 u35,U36 u36,U37 u37,U38 u38,U39 u39,U40 u40,U41 u41,U42 u42,U43 u43,U44 u44,U45 u45,U46 u46,U47 u47,U48 u48,U49 u49,U50 u50,U51 u51,U52 u52,U53 u53,U54 u54,U55 u55,U56 u56,U57 u57,U58 u58,U59 u59,U60 u60,U61 u61,U62 u62,U63 u63,U64 u64))482     InternalFunction_Impl(RESULT_TYPE (*fun)(U0 u0, U1 u1, U2 u2, U3 u3, U4 u4, U5 u5, U6 u6, U7 u7, U8 u8, U9 u9, U10 u10, U11 u11, U12 u12, U13 u13, U14 u14, U15 u15, U16 u16, U17 u17, U18 u18, U19 u19, U20 u20, U21 u21, U22 u22, U23 u23, U24 u24, U25 u25, U26 u26, U27 u27, U28 u28, U29 u29, U30 u30, U31 u31, U32 u32, U33 u33, U34 u34, U35 u35, U36 u36, U37 u37, U38 u38, U39 u39, U40 u40, U41 u41, U42 u42, U43 u43, U44 u44, U45 u45, U46 u46, U47 u47, U48 u48, U49 u49, U50 u50, U51 u51, U52 u52, U53 u53, U54 u54, U55 u55, U56 u56, U57 u57, U58 u58, U59 u59, U60 u60, U61 u61, U62 u62, U63 u63, U64 u64)) {
483         set(XPtr<CppFunction65<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60, U61, U62, U63, U64> >(new CppFunction65<RESULT_TYPE,U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25, U26, U27, U28, U29, U30, U31, U32, U33, U34, U35, U36, U37, U38, U39, U40, U41, U42, U43, U44, U45, U46, U47, U48, U49, U50, U51, U52, U53, U54, U55, U56, U57, U58, U59, U60, U61, U62, U63, U64>(fun), true));
484     }
485 
486 
487 #endif
488