Merge "modify Klockwork bug" into tizen_2.2
[platform/framework/native/uifw.git] / src / ui / effects / runtime / lua-cpp-binding / tolua.cpp
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://www.apache.org/licenses/LICENSE-2.0/
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 #ifndef __cplusplus
19 #include "stdlib.h"
20 #endif
21 #include "string.h"
22
23 #include "tolua++.h"
24
25 /* Exported function */
26 TOLUA_API int  tolua__open (lua_State* tolua_S);
27
28 #include <utils/FUiEffects_UtilsVector3.h>
29 #include <utils/FUiEffects_UtilsVector2.h>
30 #include <utils/FUiEffects_UtilsLuaMat4.h>
31 #include "../../inc/FUiEffects_RuntimeEffectModelScript.h"
32 #include "../../inc/FUiEffects_RuntimeModel.h"
33 #include "../../inc/FUiEffects_RuntimePropertyCast.h"
34 #include "../../inc/FUiEffects_RuntimeUnitLight.h"
35 #include "../../inc/FUiEffects_RuntimePointLight.h"
36 #include "../../inc/FUiEffects_RuntimeSpotLight.h"
37 #include "../../inc/FUiEffects_RuntimeDirectionalLight.h"
38 #ifndef _DEBUG
39 #define TOLUA_RELEASE
40 #endif
41 using namespace Tizen::Ui::Effects::_Utils;
42 using namespace Tizen::Ui::Effects::_Runtime;
43 using namespace Tizen::Ui::Effects;
44 using namespace std;
45
46  static int SetMetatable(lua_State* tolua_S, const char* type, const char* operation, lua_CFunction func)
47 {
48         char ctype[128] = "const ";
49         strncat(ctype, type, sizeof(ctype)-1);
50         const char* types[2] = {type, ctype};
51
52         for (short i = 0; i < 2; ++i)
53         {
54                 luaL_getmetatable(tolua_S, types[i]);
55                 lua_pushstring(tolua_S, operation);
56                 lua_pushcfunction(tolua_S, func);
57                 lua_rawset(tolua_S, -3);
58                 lua_pop(tolua_S, 1);
59         }
60
61         return 1;
62 }
63
64 /* function to release collected object via destructor */
65 #ifdef __cplusplus
66
67 static int tolua_collect_PropertyCast (lua_State* tolua_S)
68 {
69  PropertyCast* self = (PropertyCast*) tolua_tousertype(tolua_S,1,0);
70         Mtolua_delete(self);
71         return 0;
72 }
73
74 static int tolua_collect_Vector2 (lua_State* tolua_S)
75 {
76  Vector2* self = (Vector2*) tolua_tousertype(tolua_S,1,0);
77         Mtolua_delete(self);
78         return 0;
79 }
80
81 static int tolua_collect_LuaMatrix4 (lua_State* tolua_S)
82 {
83  LuaMatrix4* self = (LuaMatrix4*) tolua_tousertype(tolua_S,1,0);
84         Mtolua_delete(self);
85         return 0;
86 }
87
88 static int tolua_collect_EffectsVector_long_ (lua_State* tolua_S)
89 {
90  EffectsVector<long>* self = (EffectsVector<long>*) tolua_tousertype(tolua_S,1,0);
91         Mtolua_delete(self);
92         return 0;
93 }
94
95 static int tolua_collect_Vector3 (lua_State* tolua_S)
96 {
97  Vector3* self = (Vector3*) tolua_tousertype(tolua_S,1,0);
98         Mtolua_delete(self);
99         return 0;
100 }
101 #endif
102
103
104 /* function to register type */
105 static void tolua_reg_types (lua_State* tolua_S)
106 {
107  tolua_usertype(tolua_S,"LuaMatrix4");
108  tolua_usertype(tolua_S,"EffectsVector<long>");
109  tolua_usertype(tolua_S,"PropertyCast");
110  tolua_usertype(tolua_S,"EffectsVector<EffectsVector<long> >");
111  tolua_usertype(tolua_S,"SpotLight");
112  tolua_usertype(tolua_S,"Vector2");
113  tolua_usertype(tolua_S,"EffectModelScript");
114  tolua_usertype(tolua_S,"PointLight");
115  tolua_usertype(tolua_S,"Vector3");
116  tolua_usertype(tolua_S,"TouchEventScript");
117  tolua_usertype(tolua_S,"EffectsVector<float>");
118  tolua_usertype(tolua_S,"DirectionalLight");
119  tolua_usertype(tolua_S,"PropertyCast::TypeValue");
120  tolua_usertype(tolua_S,"UnitLight");
121 }
122
123 /* method: GetProperty of class  EffectModelScript */
124 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_GetProperty00
125 static int tolua__EffectModelScript_GetProperty00(lua_State* tolua_S)
126 {
127 #ifndef TOLUA_RELEASE
128  tolua_Error tolua_err;
129  if (
130      !tolua_isusertype(tolua_S,1,"const EffectModelScript",0,&tolua_err) ||
131      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
132      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
133      !tolua_isnoobj(tolua_S,4,&tolua_err)
134  )
135   goto tolua_lerror;
136  else
137 #endif
138  {
139   const EffectModelScript* self = (const EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
140   long objID = ((long)  tolua_tonumber(tolua_S,2,0));
141   ElementProperty property = ((ElementProperty) (int)  tolua_tonumber(tolua_S,3,0));
142 #ifndef TOLUA_RELEASE
143   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetProperty'", NULL);
144 #endif
145   {
146    PropertyCast tolua_ret = (PropertyCast)  self->GetProperty(objID,property);
147    {
148 #ifdef __cplusplus
149     void* tolua_obj = Mtolua_new((PropertyCast)(tolua_ret));
150      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
151     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
152 #else
153     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(PropertyCast));
154      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
155     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
156 #endif
157    }
158   }
159  }
160  return 1;
161 #ifndef TOLUA_RELEASE
162  tolua_lerror:
163  tolua_error(tolua_S,"#ferror in function 'GetProperty'.",&tolua_err);
164  return 0;
165 #endif
166 }
167 #endif //#ifndef TOLUA_DISABLE
168
169 /* method: SetProperty of class  EffectModelScript */
170 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_SetProperty00
171 static int tolua__EffectModelScript_SetProperty00(lua_State* tolua_S)
172 {
173 #ifndef TOLUA_RELEASE
174  tolua_Error tolua_err;
175  if (
176      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
177      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
178      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
179      !tolua_isboolean(tolua_S,4,0,&tolua_err) ||
180      !tolua_isnoobj(tolua_S,5,&tolua_err)
181  )
182   goto tolua_lerror;
183  else
184 #endif
185  {
186   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
187   long objID = ((long)  tolua_tonumber(tolua_S,2,0));
188   ElementProperty property = ((ElementProperty) (int)  tolua_tonumber(tolua_S,3,0));
189   bool value = ((bool)  tolua_toboolean(tolua_S,4,0));
190 #ifndef TOLUA_RELEASE
191   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetProperty'", NULL);
192 #endif
193   {
194    bool tolua_ret = (bool)  self->SetProperty(objID,property,value);
195    tolua_pushboolean(tolua_S,(bool)tolua_ret);
196   }
197  }
198  return 1;
199 #ifndef TOLUA_RELEASE
200  tolua_lerror:
201  tolua_error(tolua_S,"#ferror in function 'SetProperty'.",&tolua_err);
202  return 0;
203 #endif
204 }
205 #endif //#ifndef TOLUA_DISABLE
206
207 /* method: SetProperty of class  EffectModelScript */
208 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_SetProperty01
209 static int tolua__EffectModelScript_SetProperty01(lua_State* tolua_S)
210 {
211  tolua_Error tolua_err;
212  if (
213      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
214      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
215      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
216      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
217      !tolua_isnoobj(tolua_S,5,&tolua_err)
218  )
219   goto tolua_lerror;
220  else
221  {
222   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
223   long objID = ((long)  tolua_tonumber(tolua_S,2,0));
224   ElementProperty property = ((ElementProperty) (int)  tolua_tonumber(tolua_S,3,0));
225   LUA_NUMBER value = ((LUA_NUMBER)  tolua_tonumber(tolua_S,4,0));
226 #ifndef TOLUA_RELEASE
227   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetProperty'", NULL);
228 #endif
229   {
230    bool tolua_ret = (bool)  self->SetProperty(objID,property,value);
231    tolua_pushboolean(tolua_S,(bool)tolua_ret);
232   }
233  }
234  return 1;
235 tolua_lerror:
236  return tolua__EffectModelScript_SetProperty00(tolua_S);
237 }
238 #endif //#ifndef TOLUA_DISABLE
239
240 /* method: SetProperty of class  EffectModelScript */
241 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_SetProperty02
242 static int tolua__EffectModelScript_SetProperty02(lua_State* tolua_S)
243 {
244  tolua_Error tolua_err;
245  if (
246      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
247      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
248      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
249      (tolua_isvaluenil(tolua_S,4,&tolua_err) || !tolua_isusertype(tolua_S,4,"const Vector3",0,&tolua_err)) ||
250      !tolua_isnoobj(tolua_S,5,&tolua_err)
251  )
252   goto tolua_lerror;
253  else
254  {
255   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
256   long objID = ((long)  tolua_tonumber(tolua_S,2,0));
257   ElementProperty property = ((ElementProperty) (int)  tolua_tonumber(tolua_S,3,0));
258   const Vector3* value = ((const Vector3*)  tolua_tousertype(tolua_S,4,0));
259 #ifndef TOLUA_RELEASE
260   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetProperty'", NULL);
261 #endif
262   {
263    bool tolua_ret = (bool)  self->SetProperty(objID,property,*value);
264    tolua_pushboolean(tolua_S,(bool)tolua_ret);
265   }
266  }
267  return 1;
268 tolua_lerror:
269  return tolua__EffectModelScript_SetProperty01(tolua_S);
270 }
271 #endif //#ifndef TOLUA_DISABLE
272
273 /* method: SetPropertyGroup of class  EffectModelScript */
274 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_SetPropertyGroup00
275 static int tolua__EffectModelScript_SetPropertyGroup00(lua_State* tolua_S)
276 {
277 #ifndef TOLUA_RELEASE
278  tolua_Error tolua_err;
279  if (
280      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
281      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
282      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
283      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
284      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
285      !tolua_isnoobj(tolua_S,6,&tolua_err)
286  )
287   goto tolua_lerror;
288  else
289 #endif
290  {
291   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
292   long modelSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
293   GroupElements group = ((GroupElements) (int)  tolua_tonumber(tolua_S,3,0));
294   ElementProperty property = ((ElementProperty) (int)  tolua_tonumber(tolua_S,4,0));
295   LUA_NUMBER value = ((LUA_NUMBER)  tolua_tonumber(tolua_S,5,0));
296 #ifndef TOLUA_RELEASE
297   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetPropertyGroup'", NULL);
298 #endif
299   {
300    bool tolua_ret = (bool)  self->SetPropertyGroup(modelSurfaceID,group,property,value);
301    tolua_pushboolean(tolua_S,(bool)tolua_ret);
302   }
303  }
304  return 1;
305 #ifndef TOLUA_RELEASE
306  tolua_lerror:
307  tolua_error(tolua_S,"#ferror in function 'SetPropertyGroup'.",&tolua_err);
308  return 0;
309 #endif
310 }
311 #endif //#ifndef TOLUA_DISABLE
312
313 /* method: GetDistanceFromGround of class  EffectModelScript */
314 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_GetDistanceFromGround00
315 static int tolua__EffectModelScript_GetDistanceFromGround00(lua_State* tolua_S)
316 {
317 #ifndef TOLUA_RELEASE
318  tolua_Error tolua_err;
319  if (
320      !tolua_isusertype(tolua_S,1,"const EffectModelScript",0,&tolua_err) ||
321      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
322      !tolua_isnoobj(tolua_S,3,&tolua_err)
323  )
324   goto tolua_lerror;
325  else
326 #endif
327  {
328   const EffectModelScript* self = (const EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
329   long modelSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
330 #ifndef TOLUA_RELEASE
331   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetDistanceFromGround'", NULL);
332 #endif
333   {
334    PropertyCast tolua_ret = (PropertyCast)  self->GetDistanceFromGround(modelSurfaceID);
335    {
336 #ifdef __cplusplus
337     void* tolua_obj = Mtolua_new((PropertyCast)(tolua_ret));
338      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
339     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
340 #else
341     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(PropertyCast));
342      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
343     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
344 #endif
345    }
346   }
347  }
348  return 1;
349 #ifndef TOLUA_RELEASE
350  tolua_lerror:
351  tolua_error(tolua_S,"#ferror in function 'GetDistanceFromGround'.",&tolua_err);
352  return 0;
353 #endif
354 }
355 #endif //#ifndef TOLUA_DISABLE
356
357 /* method: UpdateBitmap of class  EffectModelScript */
358 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_UpdateBitmap00
359 static int tolua__EffectModelScript_UpdateBitmap00(lua_State* tolua_S)
360 {
361 #ifndef TOLUA_RELEASE
362  tolua_Error tolua_err;
363  if (
364      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
365      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
366      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
367      !tolua_isnoobj(tolua_S,4,&tolua_err)
368  )
369   goto tolua_lerror;
370  else
371 #endif
372  {
373   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
374   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
375   long bitmapID = ((long)  tolua_tonumber(tolua_S,3,0));
376 #ifndef TOLUA_RELEASE
377   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'UpdateBitmap'", NULL);
378 #endif
379   {
380    bool tolua_ret = (bool)  self->UpdateBitmap(graphicalSurfaceID,bitmapID);
381    tolua_pushboolean(tolua_S,(bool)tolua_ret);
382   }
383  }
384  return 1;
385 #ifndef TOLUA_RELEASE
386  tolua_lerror:
387  tolua_error(tolua_S,"#ferror in function 'UpdateBitmap'.",&tolua_err);
388  return 0;
389 #endif
390 }
391 #endif //#ifndef TOLUA_DISABLE
392
393 /* method: GetNearestPointsIds of class  EffectModelScript */
394 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_GetNearestPointsIds00
395 static int tolua__EffectModelScript_GetNearestPointsIds00(lua_State* tolua_S)
396 {
397 #ifndef TOLUA_RELEASE
398  tolua_Error tolua_err;
399  if (
400      !tolua_isusertype(tolua_S,1,"const EffectModelScript",0,&tolua_err) ||
401      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
402      (tolua_isvaluenil(tolua_S,3,&tolua_err) || !tolua_isusertype(tolua_S,3,"Vector3",0,&tolua_err)) ||
403      !tolua_isnoobj(tolua_S,4,&tolua_err)
404  )
405   goto tolua_lerror;
406  else
407 #endif
408  {
409   const EffectModelScript* self = (const EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
410   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
411   Vector3* position = ((Vector3*)  tolua_tousertype(tolua_S,3,0));
412 #ifndef TOLUA_RELEASE
413   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetNearestPointsIds'", NULL);
414 #endif
415   {
416    PropertyCast tolua_ret = (PropertyCast)  self->GetNearestPointsIds(graphicalSurfaceID,*position);
417    {
418 #ifdef __cplusplus
419     void* tolua_obj = Mtolua_new((PropertyCast)(tolua_ret));
420      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
421     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
422 #else
423     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(PropertyCast));
424      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
425     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
426 #endif
427    }
428   }
429  }
430  return 1;
431 #ifndef TOLUA_RELEASE
432  tolua_lerror:
433  tolua_error(tolua_S,"#ferror in function 'GetNearestPointsIds'.",&tolua_err);
434  return 0;
435 #endif
436 }
437 #endif //#ifndef TOLUA_DISABLE
438
439 /* method: GetNearestPointsIds of class  EffectModelScript */
440 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_GetNearestPointsIds01
441 static int tolua__EffectModelScript_GetNearestPointsIds01(lua_State* tolua_S)
442 {
443  tolua_Error tolua_err;
444  if (
445      !tolua_isusertype(tolua_S,1,"const EffectModelScript",0,&tolua_err) ||
446      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
447      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
448      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
449      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
450      !tolua_isnoobj(tolua_S,6,&tolua_err)
451  )
452   goto tolua_lerror;
453  else
454  {
455   const EffectModelScript* self = (const EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
456   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
457   float posX = ((float)  tolua_tonumber(tolua_S,3,0));
458   float posY = ((float)  tolua_tonumber(tolua_S,4,0));
459   float posZ = ((float)  tolua_tonumber(tolua_S,5,0));
460 #ifndef TOLUA_RELEASE
461   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetNearestPointsIds'", NULL);
462 #endif
463   {
464    PropertyCast tolua_ret = (PropertyCast)  self->GetNearestPointsIds(graphicalSurfaceID,posX,posY,posZ);
465    {
466 #ifdef __cplusplus
467     void* tolua_obj = Mtolua_new((PropertyCast)(tolua_ret));
468      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
469     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
470 #else
471     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(PropertyCast));
472      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
473     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
474 #endif
475    }
476   }
477  }
478  return 1;
479 tolua_lerror:
480  return tolua__EffectModelScript_GetNearestPointsIds00(tolua_S);
481 }
482 #endif //#ifndef TOLUA_DISABLE
483
484 /* method: RotateSurfaceN of class  EffectModelScript */
485 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_RotateSurfaceN00
486 static int tolua__EffectModelScript_RotateSurfaceN00(lua_State* tolua_S)
487 {
488 #ifndef TOLUA_RELEASE
489  tolua_Error tolua_err;
490  if (
491      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
492      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
493      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
494      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
495      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
496      !tolua_isnumber(tolua_S,6,1,&tolua_err) ||
497      !tolua_isnumber(tolua_S,7,1,&tolua_err) ||
498      !tolua_isnumber(tolua_S,8,1,&tolua_err) ||
499      !tolua_isnumber(tolua_S,9,1,&tolua_err) ||
500      !tolua_isnumber(tolua_S,10,1,&tolua_err) ||
501      !tolua_isnumber(tolua_S,11,1,&tolua_err) ||
502      !tolua_isnoobj(tolua_S,12,&tolua_err)
503  )
504   goto tolua_lerror;
505  else
506 #endif
507  {
508   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
509   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
510   float angle = ((float)  tolua_tonumber(tolua_S,3,0));
511   _Axis axis = ((_Axis) (int)  tolua_tonumber(tolua_S,4,0));
512   _Point point = ((_Point) (int)  tolua_tonumber(tolua_S,5,0));
513   float ax = ((float)  tolua_tonumber(tolua_S,6,0.f));
514   float ay = ((float)  tolua_tonumber(tolua_S,7,0.f));
515   float az = ((float)  tolua_tonumber(tolua_S,8,1.f));
516   float x0 = ((float)  tolua_tonumber(tolua_S,9,0.f));
517   float y0 = ((float)  tolua_tonumber(tolua_S,10,0.f));
518   float z0 = ((float)  tolua_tonumber(tolua_S,11,0.f));
519 #ifndef TOLUA_RELEASE
520   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateSurfaceN'", NULL);
521 #endif
522   {
523    bool tolua_ret = (bool)  self->RotateSurfaceN(graphicalSurfaceID,angle,axis,point,ax,ay,az,x0,y0,z0);
524    tolua_pushboolean(tolua_S,(bool)tolua_ret);
525   }
526  }
527  return 1;
528 #ifndef TOLUA_RELEASE
529  tolua_lerror:
530  tolua_error(tolua_S,"#ferror in function 'RotateSurfaceN'.",&tolua_err);
531  return 0;
532 #endif
533 }
534 #endif //#ifndef TOLUA_DISABLE
535
536 /* method: RotateSurfaceV of class  EffectModelScript */
537 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_RotateSurfaceV00
538 static int tolua__EffectModelScript_RotateSurfaceV00(lua_State* tolua_S)
539 {
540 #ifndef TOLUA_RELEASE
541  tolua_Error tolua_err;
542  if (
543      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
544      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
545      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
546      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
547      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
548      !tolua_isnoobj(tolua_S,6,&tolua_err)
549  )
550   goto tolua_lerror;
551  else
552 #endif
553  {
554   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
555   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
556   float angle = ((float)  tolua_tonumber(tolua_S,3,0));
557   _Axis axis = ((_Axis) (int)  tolua_tonumber(tolua_S,4,0));
558   _Point point = ((_Point) (int)  tolua_tonumber(tolua_S,5,0));
559 #ifndef TOLUA_RELEASE
560   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateSurfaceV'", NULL);
561 #endif
562   {
563    bool tolua_ret = (bool)  self->RotateSurfaceV(graphicalSurfaceID,angle,axis,point);
564    tolua_pushboolean(tolua_S,(bool)tolua_ret);
565   }
566  }
567  return 1;
568 #ifndef TOLUA_RELEASE
569  tolua_lerror:
570  tolua_error(tolua_S,"#ferror in function 'RotateSurfaceV'.",&tolua_err);
571  return 0;
572 #endif
573 }
574 #endif //#ifndef TOLUA_DISABLE
575
576 /* method: RotateSurfaceV of class  EffectModelScript */
577 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_RotateSurfaceV01
578 static int tolua__EffectModelScript_RotateSurfaceV01(lua_State* tolua_S)
579 {
580  tolua_Error tolua_err;
581  if (
582      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
583      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
584      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
585      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
586      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
587      (tolua_isvaluenil(tolua_S,6,&tolua_err) || !tolua_isusertype(tolua_S,6,"const Vector3",0,&tolua_err)) ||
588      !tolua_isnoobj(tolua_S,7,&tolua_err)
589  )
590   goto tolua_lerror;
591  else
592  {
593   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
594   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
595   float angle = ((float)  tolua_tonumber(tolua_S,3,0));
596   _Axis axis = ((_Axis) (int)  tolua_tonumber(tolua_S,4,0));
597   _Point point = ((_Point) (int)  tolua_tonumber(tolua_S,5,0));
598   const Vector3* axisArbit = ((const Vector3*)  tolua_tousertype(tolua_S,6,0));
599 #ifndef TOLUA_RELEASE
600   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateSurfaceV'", NULL);
601 #endif
602   {
603    bool tolua_ret = (bool)  self->RotateSurfaceV(graphicalSurfaceID,angle,axis,point,*axisArbit);
604    tolua_pushboolean(tolua_S,(bool)tolua_ret);
605   }
606  }
607  return 1;
608 tolua_lerror:
609  return tolua__EffectModelScript_RotateSurfaceV00(tolua_S);
610 }
611 #endif //#ifndef TOLUA_DISABLE
612
613 /* method: RotateSurfaceV of class  EffectModelScript */
614 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_RotateSurfaceV02
615 static int tolua__EffectModelScript_RotateSurfaceV02(lua_State* tolua_S)
616 {
617  tolua_Error tolua_err;
618  if (
619      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
620      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
621      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
622      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
623      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
624      (tolua_isvaluenil(tolua_S,6,&tolua_err) || !tolua_isusertype(tolua_S,6,"const Vector3",0,&tolua_err)) ||
625      (tolua_isvaluenil(tolua_S,7,&tolua_err) || !tolua_isusertype(tolua_S,7,"const Vector3",0,&tolua_err)) ||
626      !tolua_isnoobj(tolua_S,8,&tolua_err)
627  )
628   goto tolua_lerror;
629  else
630  {
631   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
632   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
633   float angle = ((float)  tolua_tonumber(tolua_S,3,0));
634   _Axis axis = ((_Axis) (int)  tolua_tonumber(tolua_S,4,0));
635   _Point point = ((_Point) (int)  tolua_tonumber(tolua_S,5,0));
636   const Vector3* axisArbit = ((const Vector3*)  tolua_tousertype(tolua_S,6,0));
637   const Vector3* basePointArbit = ((const Vector3*)  tolua_tousertype(tolua_S,7,0));
638 #ifndef TOLUA_RELEASE
639   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateSurfaceV'", NULL);
640 #endif
641   {
642    bool tolua_ret = (bool)  self->RotateSurfaceV(graphicalSurfaceID,angle,axis,point,*axisArbit,*basePointArbit);
643    tolua_pushboolean(tolua_S,(bool)tolua_ret);
644   }
645  }
646  return 1;
647 tolua_lerror:
648  return tolua__EffectModelScript_RotateSurfaceV01(tolua_S);
649 }
650 #endif //#ifndef TOLUA_DISABLE
651
652 /* method: ScaleSurface of class  EffectModelScript */
653 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_ScaleSurface00
654 static int tolua__EffectModelScript_ScaleSurface00(lua_State* tolua_S)
655 {
656 #ifndef TOLUA_RELEASE
657  tolua_Error tolua_err;
658  if (
659      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
660      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
661      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
662      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
663      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
664      !tolua_isnumber(tolua_S,6,0,&tolua_err) ||
665      !tolua_isnumber(tolua_S,7,1,&tolua_err) ||
666      !tolua_isnumber(tolua_S,8,1,&tolua_err) ||
667      !tolua_isnumber(tolua_S,9,1,&tolua_err) ||
668      !tolua_isnoobj(tolua_S,10,&tolua_err)
669  )
670   goto tolua_lerror;
671  else
672 #endif
673  {
674   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
675   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
676   float ax = ((float)  tolua_tonumber(tolua_S,3,0));
677   float ay = ((float)  tolua_tonumber(tolua_S,4,0));
678   float az = ((float)  tolua_tonumber(tolua_S,5,0));
679   _Point point = ((_Point) (int)  tolua_tonumber(tolua_S,6,0));
680   float x0 = ((float)  tolua_tonumber(tolua_S,7,0.f));
681   float y0 = ((float)  tolua_tonumber(tolua_S,8,0.f));
682   float z0 = ((float)  tolua_tonumber(tolua_S,9,0.f));
683 #ifndef TOLUA_RELEASE
684   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'ScaleSurface'", NULL);
685 #endif
686   {
687    bool tolua_ret = (bool)  self->ScaleSurface(graphicalSurfaceID,ax,ay,az,point,x0,y0,z0);
688    tolua_pushboolean(tolua_S,(bool)tolua_ret);
689   }
690  }
691  return 1;
692 #ifndef TOLUA_RELEASE
693  tolua_lerror:
694  tolua_error(tolua_S,"#ferror in function 'ScaleSurface'.",&tolua_err);
695  return 0;
696 #endif
697 }
698 #endif //#ifndef TOLUA_DISABLE
699
700 /* method: ScaleSurface of class  EffectModelScript */
701 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_ScaleSurface01
702 static int tolua__EffectModelScript_ScaleSurface01(lua_State* tolua_S)
703 {
704  tolua_Error tolua_err;
705  if (
706      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
707      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
708      (tolua_isvaluenil(tolua_S,3,&tolua_err) || !tolua_isusertype(tolua_S,3,"const Vector3",0,&tolua_err)) ||
709      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
710      !tolua_isnoobj(tolua_S,5,&tolua_err)
711  )
712   goto tolua_lerror;
713  else
714  {
715   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
716   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
717   const Vector3* multipliers = ((const Vector3*)  tolua_tousertype(tolua_S,3,0));
718   _Point point = ((_Point) (int)  tolua_tonumber(tolua_S,4,0));
719 #ifndef TOLUA_RELEASE
720   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'ScaleSurface'", NULL);
721 #endif
722   {
723    bool tolua_ret = (bool)  self->ScaleSurface(graphicalSurfaceID,*multipliers,point);
724    tolua_pushboolean(tolua_S,(bool)tolua_ret);
725   }
726  }
727  return 1;
728 tolua_lerror:
729  return tolua__EffectModelScript_ScaleSurface00(tolua_S);
730 }
731 #endif //#ifndef TOLUA_DISABLE
732
733 /* method: ScaleSurface of class  EffectModelScript */
734 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_ScaleSurface02
735 static int tolua__EffectModelScript_ScaleSurface02(lua_State* tolua_S)
736 {
737  tolua_Error tolua_err;
738  if (
739      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
740      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
741      (tolua_isvaluenil(tolua_S,3,&tolua_err) || !tolua_isusertype(tolua_S,3,"const Vector3",0,&tolua_err)) ||
742      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
743      (tolua_isvaluenil(tolua_S,5,&tolua_err) || !tolua_isusertype(tolua_S,5,"const Vector3",0,&tolua_err)) ||
744      !tolua_isnoobj(tolua_S,6,&tolua_err)
745  )
746   goto tolua_lerror;
747  else
748  {
749   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
750   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
751   const Vector3* multipliers = ((const Vector3*)  tolua_tousertype(tolua_S,3,0));
752   _Point point = ((_Point) (int)  tolua_tonumber(tolua_S,4,0));
753   const Vector3* basePoint = ((const Vector3*)  tolua_tousertype(tolua_S,5,0));
754 #ifndef TOLUA_RELEASE
755   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'ScaleSurface'", NULL);
756 #endif
757   {
758    bool tolua_ret = (bool)  self->ScaleSurface(graphicalSurfaceID,*multipliers,point,*basePoint);
759    tolua_pushboolean(tolua_S,(bool)tolua_ret);
760   }
761  }
762  return 1;
763 tolua_lerror:
764  return tolua__EffectModelScript_ScaleSurface01(tolua_S);
765 }
766 #endif //#ifndef TOLUA_DISABLE
767
768 /* method: MoveSurface of class  EffectModelScript */
769 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_MoveSurface00
770 static int tolua__EffectModelScript_MoveSurface00(lua_State* tolua_S)
771 {
772 #ifndef TOLUA_RELEASE
773  tolua_Error tolua_err;
774  if (
775      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
776      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
777      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
778      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
779      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
780      !tolua_isnoobj(tolua_S,6,&tolua_err)
781  )
782   goto tolua_lerror;
783  else
784 #endif
785  {
786   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
787   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
788   float x0 = ((float)  tolua_tonumber(tolua_S,3,0));
789   float y0 = ((float)  tolua_tonumber(tolua_S,4,0));
790   float z0 = ((float)  tolua_tonumber(tolua_S,5,0));
791 #ifndef TOLUA_RELEASE
792   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'MoveSurface'", NULL);
793 #endif
794   {
795    bool tolua_ret = (bool)  self->MoveSurface(graphicalSurfaceID,x0,y0,z0);
796    tolua_pushboolean(tolua_S,(bool)tolua_ret);
797   }
798  }
799  return 1;
800 #ifndef TOLUA_RELEASE
801  tolua_lerror:
802  tolua_error(tolua_S,"#ferror in function 'MoveSurface'.",&tolua_err);
803  return 0;
804 #endif
805 }
806 #endif //#ifndef TOLUA_DISABLE
807
808 /* method: MoveSurface of class  EffectModelScript */
809 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_MoveSurface01
810 static int tolua__EffectModelScript_MoveSurface01(lua_State* tolua_S)
811 {
812  tolua_Error tolua_err;
813  if (
814      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
815      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
816      (tolua_isvaluenil(tolua_S,3,&tolua_err) || !tolua_isusertype(tolua_S,3,"const Vector3",0,&tolua_err)) ||
817      !tolua_isnoobj(tolua_S,4,&tolua_err)
818  )
819   goto tolua_lerror;
820  else
821  {
822   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
823   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
824   const Vector3* pointTarget = ((const Vector3*)  tolua_tousertype(tolua_S,3,0));
825 #ifndef TOLUA_RELEASE
826   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'MoveSurface'", NULL);
827 #endif
828   {
829    bool tolua_ret = (bool)  self->MoveSurface(graphicalSurfaceID,*pointTarget);
830    tolua_pushboolean(tolua_S,(bool)tolua_ret);
831   }
832  }
833  return 1;
834 tolua_lerror:
835  return tolua__EffectModelScript_MoveSurface00(tolua_S);
836 }
837 #endif //#ifndef TOLUA_DISABLE
838
839 /* method: ResetSurfaceTransformation of class  EffectModelScript */
840 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_ResetSurfaceTransformation00
841 static int tolua__EffectModelScript_ResetSurfaceTransformation00(lua_State* tolua_S)
842 {
843 #ifndef TOLUA_RELEASE
844  tolua_Error tolua_err;
845  if (
846      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
847      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
848      !tolua_isnoobj(tolua_S,3,&tolua_err)
849  )
850   goto tolua_lerror;
851  else
852 #endif
853  {
854   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
855   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
856 #ifndef TOLUA_RELEASE
857   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'ResetSurfaceTransformation'", NULL);
858 #endif
859   {
860    bool tolua_ret = (bool)  self->ResetSurfaceTransformation(graphicalSurfaceID);
861    tolua_pushboolean(tolua_S,(bool)tolua_ret);
862   }
863  }
864  return 1;
865 #ifndef TOLUA_RELEASE
866  tolua_lerror:
867  tolua_error(tolua_S,"#ferror in function 'ResetSurfaceTransformation'.",&tolua_err);
868  return 0;
869 #endif
870 }
871 #endif //#ifndef TOLUA_DISABLE
872
873 /* method: PrintLuaInfo of class  EffectModelScript */
874 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_PrintLuaInfo00
875 static int tolua__EffectModelScript_PrintLuaInfo00(lua_State* tolua_S)
876 {
877 #ifndef TOLUA_RELEASE
878  tolua_Error tolua_err;
879  if (
880      !tolua_isusertable(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
881      !tolua_isstring(tolua_S,2,0,&tolua_err) ||
882      !tolua_isnoobj(tolua_S,3,&tolua_err)
883  )
884   goto tolua_lerror;
885  else
886 #endif
887  {
888   const char* pStr = ((const char*)  tolua_tostring(tolua_S,2,0));
889   {
890    EffectModelScript::PrintLuaInfo(pStr);
891   }
892  }
893  return 0;
894 #ifndef TOLUA_RELEASE
895  tolua_lerror:
896  tolua_error(tolua_S,"#ferror in function 'PrintLuaInfo'.",&tolua_err);
897  return 0;
898 #endif
899 }
900 #endif //#ifndef TOLUA_DISABLE
901
902 /* method: SetTransformationMatrix of class  EffectModelScript */
903 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_SetTransformationMatrix00
904 static int tolua__EffectModelScript_SetTransformationMatrix00(lua_State* tolua_S)
905 {
906 #ifndef TOLUA_RELEASE
907  tolua_Error tolua_err;
908  if (
909      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
910      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
911      (tolua_isvaluenil(tolua_S,3,&tolua_err) || !tolua_isusertype(tolua_S,3,"const LuaMatrix4",0,&tolua_err)) ||
912      !tolua_isnoobj(tolua_S,4,&tolua_err)
913  )
914   goto tolua_lerror;
915  else
916 #endif
917  {
918   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
919   long graphicalSurfaceID = ((long)  tolua_tonumber(tolua_S,2,0));
920   const LuaMatrix4* luaMatrix4 = ((const LuaMatrix4*)  tolua_tousertype(tolua_S,3,0));
921 #ifndef TOLUA_RELEASE
922   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetTransformationMatrix'", NULL);
923 #endif
924   {
925    bool tolua_ret = (bool)  self->SetTransformationMatrix(graphicalSurfaceID,*luaMatrix4);
926    tolua_pushboolean(tolua_S,(bool)tolua_ret);
927   }
928  }
929  return 1;
930 #ifndef TOLUA_RELEASE
931  tolua_lerror:
932  tolua_error(tolua_S,"#ferror in function 'SetTransformationMatrix'.",&tolua_err);
933  return 0;
934 #endif
935 }
936 #endif //#ifndef TOLUA_DISABLE
937
938 /* method: AddUnitLight of class  EffectModelScript */
939 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_AddUnitLight00
940 static int tolua__EffectModelScript_AddUnitLight00(lua_State* tolua_S)
941 {
942 #ifndef TOLUA_RELEASE
943  tolua_Error tolua_err;
944  if (
945      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
946      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"UnitLight",0,&tolua_err)) ||
947      !tolua_isnoobj(tolua_S,3,&tolua_err)
948  )
949   goto tolua_lerror;
950  else
951 #endif
952  {
953   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
954   UnitLight* unitLight = ((UnitLight*)  tolua_tousertype(tolua_S,2,0));
955 #ifndef TOLUA_RELEASE
956   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'AddUnitLight'", NULL);
957 #endif
958   {
959    bool tolua_ret = (bool)  self->AddUnitLight(*unitLight);
960    tolua_pushboolean(tolua_S,(bool)tolua_ret);
961   }
962  }
963  return 1;
964 #ifndef TOLUA_RELEASE
965  tolua_lerror:
966  tolua_error(tolua_S,"#ferror in function 'AddUnitLight'.",&tolua_err);
967  return 0;
968 #endif
969 }
970 #endif //#ifndef TOLUA_DISABLE
971
972 /* method: RemoveUnitLight of class  EffectModelScript */
973 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_RemoveUnitLight00
974 static int tolua__EffectModelScript_RemoveUnitLight00(lua_State* tolua_S)
975 {
976 #ifndef TOLUA_RELEASE
977  tolua_Error tolua_err;
978  if (
979      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
980      !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||
981      !tolua_isnoobj(tolua_S,3,&tolua_err)
982  )
983   goto tolua_lerror;
984  else
985 #endif
986  {
987   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
988   const string name = ((const string)  tolua_tocppstring(tolua_S,2,0));
989 #ifndef TOLUA_RELEASE
990   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RemoveUnitLight'", NULL);
991 #endif
992   {
993    bool tolua_ret = (bool)  self->RemoveUnitLight(name);
994    tolua_pushboolean(tolua_S,(bool)tolua_ret);
995    tolua_pushcppstring(tolua_S,(const char*)name);
996   }
997  }
998  return 2;
999 #ifndef TOLUA_RELEASE
1000  tolua_lerror:
1001  tolua_error(tolua_S,"#ferror in function 'RemoveUnitLight'.",&tolua_err);
1002  return 0;
1003 #endif
1004 }
1005 #endif //#ifndef TOLUA_DISABLE
1006
1007 /* method: RemoveAllUnitsLightType of class  EffectModelScript */
1008 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_RemoveAllUnitsLightType00
1009 static int tolua__EffectModelScript_RemoveAllUnitsLightType00(lua_State* tolua_S)
1010 {
1011 #ifndef TOLUA_RELEASE
1012  tolua_Error tolua_err;
1013  if (
1014      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
1015      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
1016      !tolua_isnoobj(tolua_S,3,&tolua_err)
1017  )
1018   goto tolua_lerror;
1019  else
1020 #endif
1021  {
1022   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
1023   TypeUnitLight typeUnitLight = ((TypeUnitLight) (int)  tolua_tonumber(tolua_S,2,0));
1024 #ifndef TOLUA_RELEASE
1025   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RemoveAllUnitsLightType'", NULL);
1026 #endif
1027   {
1028    bool tolua_ret = (bool)  self->RemoveAllUnitsLightType(typeUnitLight);
1029    tolua_pushboolean(tolua_S,(bool)tolua_ret);
1030   }
1031  }
1032  return 1;
1033 #ifndef TOLUA_RELEASE
1034  tolua_lerror:
1035  tolua_error(tolua_S,"#ferror in function 'RemoveAllUnitsLightType'.",&tolua_err);
1036  return 0;
1037 #endif
1038 }
1039 #endif //#ifndef TOLUA_DISABLE
1040
1041 /* method: GetUnitLight of class  EffectModelScript */
1042 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_GetUnitLight00
1043 static int tolua__EffectModelScript_GetUnitLight00(lua_State* tolua_S)
1044 {
1045 #ifndef TOLUA_RELEASE
1046  tolua_Error tolua_err;
1047  if (
1048      !tolua_isusertype(tolua_S,1,"const EffectModelScript",0,&tolua_err) ||
1049      !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||
1050      !tolua_isnoobj(tolua_S,3,&tolua_err)
1051  )
1052   goto tolua_lerror;
1053  else
1054 #endif
1055  {
1056   const EffectModelScript* self = (const EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
1057   const string name = ((const string)  tolua_tocppstring(tolua_S,2,0));
1058 #ifndef TOLUA_RELEASE
1059   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetUnitLight'", NULL);
1060 #endif
1061   {
1062    PropertyCast tolua_ret = (PropertyCast)  self->GetUnitLight(name);
1063    {
1064 #ifdef __cplusplus
1065     void* tolua_obj = Mtolua_new((PropertyCast)(tolua_ret));
1066      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
1067     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
1068 #else
1069     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(PropertyCast));
1070      tolua_pushusertype(tolua_S,tolua_obj,"PropertyCast");
1071     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
1072 #endif
1073    }
1074    tolua_pushcppstring(tolua_S,(const char*)name);
1075   }
1076  }
1077  return 2;
1078 #ifndef TOLUA_RELEASE
1079  tolua_lerror:
1080  tolua_error(tolua_S,"#ferror in function 'GetUnitLight'.",&tolua_err);
1081  return 0;
1082 #endif
1083 }
1084 #endif //#ifndef TOLUA_DISABLE
1085
1086 /* method: SetLightAmbientColour of class  EffectModelScript */
1087 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_SetLightAmbientColour00
1088 static int tolua__EffectModelScript_SetLightAmbientColour00(lua_State* tolua_S)
1089 {
1090 #ifndef TOLUA_RELEASE
1091  tolua_Error tolua_err;
1092  if (
1093      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
1094      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
1095      !tolua_isnoobj(tolua_S,3,&tolua_err)
1096  )
1097   goto tolua_lerror;
1098  else
1099 #endif
1100  {
1101   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
1102   const Vector3* ambientColour = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
1103 #ifndef TOLUA_RELEASE
1104   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetLightAmbientColour'", NULL);
1105 #endif
1106   {
1107    self->SetLightAmbientColour(*ambientColour);
1108   }
1109  }
1110  return 0;
1111 #ifndef TOLUA_RELEASE
1112  tolua_lerror:
1113  tolua_error(tolua_S,"#ferror in function 'SetLightAmbientColour'.",&tolua_err);
1114  return 0;
1115 #endif
1116 }
1117 #endif //#ifndef TOLUA_DISABLE
1118
1119 /* method: SetLightAmbientColour of class  EffectModelScript */
1120 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_SetLightAmbientColour01
1121 static int tolua__EffectModelScript_SetLightAmbientColour01(lua_State* tolua_S)
1122 {
1123  tolua_Error tolua_err;
1124  if (
1125      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
1126      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
1127      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
1128      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
1129      !tolua_isnoobj(tolua_S,5,&tolua_err)
1130  )
1131   goto tolua_lerror;
1132  else
1133  {
1134   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
1135   float red = ((float)  tolua_tonumber(tolua_S,2,0));
1136   float green = ((float)  tolua_tonumber(tolua_S,3,0));
1137   float blue = ((float)  tolua_tonumber(tolua_S,4,0));
1138 #ifndef TOLUA_RELEASE
1139   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetLightAmbientColour'", NULL);
1140 #endif
1141   {
1142    self->SetLightAmbientColour(red,green,blue);
1143   }
1144  }
1145  return 0;
1146 tolua_lerror:
1147  return tolua__EffectModelScript_SetLightAmbientColour00(tolua_S);
1148 }
1149 #endif //#ifndef TOLUA_DISABLE
1150
1151 /* method: SetLightIntensity of class  EffectModelScript */
1152 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_SetLightIntensity00
1153 static int tolua__EffectModelScript_SetLightIntensity00(lua_State* tolua_S)
1154 {
1155 #ifndef TOLUA_RELEASE
1156  tolua_Error tolua_err;
1157  if (
1158      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
1159      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
1160      !tolua_isnoobj(tolua_S,3,&tolua_err)
1161  )
1162   goto tolua_lerror;
1163  else
1164 #endif
1165  {
1166   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
1167   float intensity = ((float)  tolua_tonumber(tolua_S,2,0));
1168 #ifndef TOLUA_RELEASE
1169   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetLightIntensity'", NULL);
1170 #endif
1171   {
1172    self->SetLightIntensity(intensity);
1173   }
1174  }
1175  return 0;
1176 #ifndef TOLUA_RELEASE
1177  tolua_lerror:
1178  tolua_error(tolua_S,"#ferror in function 'SetLightIntensity'.",&tolua_err);
1179  return 0;
1180 #endif
1181 }
1182 #endif //#ifndef TOLUA_DISABLE
1183
1184 /* method: SetLightAttenuation of class  EffectModelScript */
1185 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_SetLightAttenuation00
1186 static int tolua__EffectModelScript_SetLightAttenuation00(lua_State* tolua_S)
1187 {
1188 #ifndef TOLUA_RELEASE
1189  tolua_Error tolua_err;
1190  if (
1191      !tolua_isusertype(tolua_S,1,"EffectModelScript",0,&tolua_err) ||
1192      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
1193      !tolua_isnoobj(tolua_S,3,&tolua_err)
1194  )
1195   goto tolua_lerror;
1196  else
1197 #endif
1198  {
1199   EffectModelScript* self = (EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
1200   float attenuation = ((float)  tolua_tonumber(tolua_S,2,0));
1201 #ifndef TOLUA_RELEASE
1202   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetLightAttenuation'", NULL);
1203 #endif
1204   {
1205    self->SetLightAttenuation(attenuation);
1206   }
1207  }
1208  return 0;
1209 #ifndef TOLUA_RELEASE
1210  tolua_lerror:
1211  tolua_error(tolua_S,"#ferror in function 'SetLightAttenuation'.",&tolua_err);
1212  return 0;
1213 #endif
1214 }
1215 #endif //#ifndef TOLUA_DISABLE
1216
1217 /* method: GetLightAmbientColour of class  EffectModelScript */
1218 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_GetLightAmbientColour00
1219 static int tolua__EffectModelScript_GetLightAmbientColour00(lua_State* tolua_S)
1220 {
1221 #ifndef TOLUA_RELEASE
1222  tolua_Error tolua_err;
1223  if (
1224      !tolua_isusertype(tolua_S,1,"const EffectModelScript",0,&tolua_err) ||
1225      !tolua_isnoobj(tolua_S,2,&tolua_err)
1226  )
1227   goto tolua_lerror;
1228  else
1229 #endif
1230  {
1231   const EffectModelScript* self = (const EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
1232 #ifndef TOLUA_RELEASE
1233   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetLightAmbientColour'", NULL);
1234 #endif
1235   {
1236    const Vector3& tolua_ret = (const Vector3&)  self->GetLightAmbientColour();
1237    {
1238 #ifdef __cplusplus
1239     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
1240      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
1241     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
1242 #else
1243     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(const Vector3));
1244      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
1245     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
1246 #endif
1247    }
1248   }
1249  }
1250  return 1;
1251 #ifndef TOLUA_RELEASE
1252  tolua_lerror:
1253  tolua_error(tolua_S,"#ferror in function 'GetLightAmbientColour'.",&tolua_err);
1254  return 0;
1255 #endif
1256 }
1257 #endif //#ifndef TOLUA_DISABLE
1258
1259 /* method: GetLightIntensity of class  EffectModelScript */
1260 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_GetLightIntensity00
1261 static int tolua__EffectModelScript_GetLightIntensity00(lua_State* tolua_S)
1262 {
1263 #ifndef TOLUA_RELEASE
1264  tolua_Error tolua_err;
1265  if (
1266      !tolua_isusertype(tolua_S,1,"const EffectModelScript",0,&tolua_err) ||
1267      !tolua_isnoobj(tolua_S,2,&tolua_err)
1268  )
1269   goto tolua_lerror;
1270  else
1271 #endif
1272  {
1273   const EffectModelScript* self = (const EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
1274 #ifndef TOLUA_RELEASE
1275   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetLightIntensity'", NULL);
1276 #endif
1277   {
1278    float tolua_ret = (float)  self->GetLightIntensity();
1279    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
1280   }
1281  }
1282  return 1;
1283 #ifndef TOLUA_RELEASE
1284  tolua_lerror:
1285  tolua_error(tolua_S,"#ferror in function 'GetLightIntensity'.",&tolua_err);
1286  return 0;
1287 #endif
1288 }
1289 #endif //#ifndef TOLUA_DISABLE
1290
1291 /* method: GetLightAttenuation of class  EffectModelScript */
1292 #ifndef TOLUA_DISABLE_tolua__EffectModelScript_GetLightAttenuation00
1293 static int tolua__EffectModelScript_GetLightAttenuation00(lua_State* tolua_S)
1294 {
1295 #ifndef TOLUA_RELEASE
1296  tolua_Error tolua_err;
1297  if (
1298      !tolua_isusertype(tolua_S,1,"const EffectModelScript",0,&tolua_err) ||
1299      !tolua_isnoobj(tolua_S,2,&tolua_err)
1300  )
1301   goto tolua_lerror;
1302  else
1303 #endif
1304  {
1305   const EffectModelScript* self = (const EffectModelScript*)  tolua_tousertype(tolua_S,1,0);
1306 #ifndef TOLUA_RELEASE
1307   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetLightAttenuation'", NULL);
1308 #endif
1309   {
1310    float tolua_ret = (float)  self->GetLightAttenuation();
1311    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
1312   }
1313  }
1314  return 1;
1315 #ifndef TOLUA_RELEASE
1316  tolua_lerror:
1317  tolua_error(tolua_S,"#ferror in function 'GetLightAttenuation'.",&tolua_err);
1318  return 0;
1319 #endif
1320 }
1321 #endif //#ifndef TOLUA_DISABLE
1322
1323 /* get function: currentPosition of class  TouchEventScript */
1324 #ifndef TOLUA_DISABLE_tolua_get_TouchEventScript_currentPosition
1325 static int tolua_get_TouchEventScript_currentPosition(lua_State* tolua_S)
1326 {
1327   TouchEventScript* self = (TouchEventScript*)  tolua_tousertype(tolua_S,1,0);
1328 #ifndef TOLUA_RELEASE
1329   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'currentPosition'",NULL);
1330 #endif
1331    tolua_pushusertype(tolua_S,(void*)&self->currentPosition,"Vector3");
1332  return 1;
1333 }
1334 #endif //#ifndef TOLUA_DISABLE
1335
1336 /* set function: currentPosition of class  TouchEventScript */
1337 #ifndef TOLUA_DISABLE_tolua_set_TouchEventScript_currentPosition
1338 static int tolua_set_TouchEventScript_currentPosition(lua_State* tolua_S)
1339 {
1340   TouchEventScript* self = (TouchEventScript*)  tolua_tousertype(tolua_S,1,0);
1341 #ifndef TOLUA_RELEASE
1342   tolua_Error tolua_err;
1343   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'currentPosition'",NULL);
1344   if ((tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"Vector3",0,&tolua_err)))
1345    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
1346 #endif
1347   self->currentPosition = *((Vector3*)  tolua_tousertype(tolua_S,2,0))
1348 ;
1349  return 0;
1350 }
1351 #endif //#ifndef TOLUA_DISABLE
1352
1353 /* get function: startPosition of class  TouchEventScript */
1354 #ifndef TOLUA_DISABLE_tolua_get_TouchEventScript_startPosition
1355 static int tolua_get_TouchEventScript_startPosition(lua_State* tolua_S)
1356 {
1357   TouchEventScript* self = (TouchEventScript*)  tolua_tousertype(tolua_S,1,0);
1358 #ifndef TOLUA_RELEASE
1359   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'startPosition'",NULL);
1360 #endif
1361    tolua_pushusertype(tolua_S,(void*)&self->startPosition,"Vector3");
1362  return 1;
1363 }
1364 #endif //#ifndef TOLUA_DISABLE
1365
1366 /* set function: startPosition of class  TouchEventScript */
1367 #ifndef TOLUA_DISABLE_tolua_set_TouchEventScript_startPosition
1368 static int tolua_set_TouchEventScript_startPosition(lua_State* tolua_S)
1369 {
1370   TouchEventScript* self = (TouchEventScript*)  tolua_tousertype(tolua_S,1,0);
1371 #ifndef TOLUA_RELEASE
1372   tolua_Error tolua_err;
1373   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'startPosition'",NULL);
1374   if ((tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"Vector3",0,&tolua_err)))
1375    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
1376 #endif
1377   self->startPosition = *((Vector3*)  tolua_tousertype(tolua_S,2,0))
1378 ;
1379  return 0;
1380 }
1381 #endif //#ifndef TOLUA_DISABLE
1382
1383 /* get function: touchId of class  TouchEventScript */
1384 #ifndef TOLUA_DISABLE_tolua_get_TouchEventScript_unsigned_touchId
1385 static int tolua_get_TouchEventScript_unsigned_touchId(lua_State* tolua_S)
1386 {
1387   TouchEventScript* self = (TouchEventScript*)  tolua_tousertype(tolua_S,1,0);
1388 #ifndef TOLUA_RELEASE
1389   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'touchId'",NULL);
1390 #endif
1391   tolua_pushnumber(tolua_S,(lua_Number)self->touchId);
1392  return 1;
1393 }
1394 #endif //#ifndef TOLUA_DISABLE
1395
1396 /* set function: touchId of class  TouchEventScript */
1397 #ifndef TOLUA_DISABLE_tolua_set_TouchEventScript_unsigned_touchId
1398 static int tolua_set_TouchEventScript_unsigned_touchId(lua_State* tolua_S)
1399 {
1400   TouchEventScript* self = (TouchEventScript*)  tolua_tousertype(tolua_S,1,0);
1401 #ifndef TOLUA_RELEASE
1402   tolua_Error tolua_err;
1403   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'touchId'",NULL);
1404   if (!tolua_isnumber(tolua_S,2,0,&tolua_err))
1405    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
1406 #endif
1407   self->touchId = ((unsigned long)  tolua_tonumber(tolua_S,2,0))
1408 ;
1409  return 0;
1410 }
1411 #endif //#ifndef TOLUA_DISABLE
1412
1413 /* get function: type of class  PropertyCast */
1414 #ifndef TOLUA_DISABLE_tolua_get_PropertyCast_type
1415 static int tolua_get_PropertyCast_type(lua_State* tolua_S)
1416 {
1417   PropertyCast* self = (PropertyCast*)  tolua_tousertype(tolua_S,1,0);
1418 #ifndef TOLUA_RELEASE
1419   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'type'",NULL);
1420 #endif
1421   tolua_pushnumber(tolua_S,(lua_Number)self->type);
1422  return 1;
1423 }
1424 #endif //#ifndef TOLUA_DISABLE
1425
1426 /* get function: numberValue of class  TypeValue */
1427 #ifndef TOLUA_DISABLE_tolua_get_PropertyCast__TypeValue_numberValue
1428 static int tolua_get_PropertyCast__TypeValue_numberValue(lua_State* tolua_S)
1429 {
1430   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1431 #ifndef TOLUA_RELEASE
1432   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'numberValue'",NULL);
1433 #endif
1434   tolua_pushnumber(tolua_S,(lua_Number)self->numberValue);
1435  return 1;
1436 }
1437 #endif //#ifndef TOLUA_DISABLE
1438
1439 /* set function: numberValue of class  TypeValue */
1440 #ifndef TOLUA_DISABLE_tolua_set_PropertyCast__TypeValue_numberValue
1441 static int tolua_set_PropertyCast__TypeValue_numberValue(lua_State* tolua_S)
1442 {
1443   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1444 #ifndef TOLUA_RELEASE
1445   tolua_Error tolua_err;
1446   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'numberValue'",NULL);
1447   if (!tolua_isnumber(tolua_S,2,0,&tolua_err))
1448    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
1449 #endif
1450   self->numberValue = ((LUA_NUMBER)  tolua_tonumber(tolua_S,2,0))
1451 ;
1452  return 0;
1453 }
1454 #endif //#ifndef TOLUA_DISABLE
1455
1456 /* get function: boolValue of class  TypeValue */
1457 #ifndef TOLUA_DISABLE_tolua_get_PropertyCast__TypeValue_boolValue
1458 static int tolua_get_PropertyCast__TypeValue_boolValue(lua_State* tolua_S)
1459 {
1460   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1461 #ifndef TOLUA_RELEASE
1462   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'boolValue'",NULL);
1463 #endif
1464   tolua_pushboolean(tolua_S,(bool)self->boolValue);
1465  return 1;
1466 }
1467 #endif //#ifndef TOLUA_DISABLE
1468
1469 /* set function: boolValue of class  TypeValue */
1470 #ifndef TOLUA_DISABLE_tolua_set_PropertyCast__TypeValue_boolValue
1471 static int tolua_set_PropertyCast__TypeValue_boolValue(lua_State* tolua_S)
1472 {
1473   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1474 #ifndef TOLUA_RELEASE
1475   tolua_Error tolua_err;
1476   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'boolValue'",NULL);
1477   if (!tolua_isboolean(tolua_S,2,0,&tolua_err))
1478    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
1479 #endif
1480   self->boolValue = ((bool)  tolua_toboolean(tolua_S,2,0))
1481 ;
1482  return 0;
1483 }
1484 #endif //#ifndef TOLUA_DISABLE
1485
1486 /* get function: vec3Value of class  TypeValue */
1487 #ifndef TOLUA_DISABLE_tolua_get_PropertyCast__TypeValue_vec3Value_ptr
1488 static int tolua_get_PropertyCast__TypeValue_vec3Value_ptr(lua_State* tolua_S)
1489 {
1490   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1491 #ifndef TOLUA_RELEASE
1492   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'vec3Value'",NULL);
1493 #endif
1494    tolua_pushusertype(tolua_S,(void*)self->vec3Value,"Vector3");
1495  return 1;
1496 }
1497 #endif //#ifndef TOLUA_DISABLE
1498
1499 /* get function: vecVecValue of class  TypeValue */
1500 #ifndef TOLUA_DISABLE_tolua_get_PropertyCast__TypeValue_vecVecValue_ptr
1501 static int tolua_get_PropertyCast__TypeValue_vecVecValue_ptr(lua_State* tolua_S)
1502 {
1503   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1504 #ifndef TOLUA_RELEASE
1505   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'vecVecValue'",NULL);
1506 #endif
1507    tolua_pushusertype(tolua_S,(void*)self->vecVecValue,"EffectsVector<EffectsVector<long> >");
1508  return 1;
1509 }
1510 #endif //#ifndef TOLUA_DISABLE
1511
1512 /* get function: pPointLight of class  TypeValue */
1513 #ifndef TOLUA_DISABLE_tolua_get_PropertyCast__TypeValue_pPointLight_ptr
1514 static int tolua_get_PropertyCast__TypeValue_pPointLight_ptr(lua_State* tolua_S)
1515 {
1516   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1517 #ifndef TOLUA_RELEASE
1518   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'pPointLight'",NULL);
1519 #endif
1520    tolua_pushusertype(tolua_S,(void*)self->pPointLight,"PointLight");
1521  return 1;
1522 }
1523 #endif //#ifndef TOLUA_DISABLE
1524
1525 /* set function: pPointLight of class  TypeValue */
1526 #ifndef TOLUA_DISABLE_tolua_set_PropertyCast__TypeValue_pPointLight_ptr
1527 static int tolua_set_PropertyCast__TypeValue_pPointLight_ptr(lua_State* tolua_S)
1528 {
1529   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1530 #ifndef TOLUA_RELEASE
1531   tolua_Error tolua_err;
1532   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'pPointLight'",NULL);
1533   if (!tolua_isusertype(tolua_S,2,"PointLight",0,&tolua_err))
1534    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
1535 #endif
1536   self->pPointLight = ((PointLight*)  tolua_tousertype(tolua_S,2,0))
1537 ;
1538  return 0;
1539 }
1540 #endif //#ifndef TOLUA_DISABLE
1541
1542 /* get function: pSpotLight of class  TypeValue */
1543 #ifndef TOLUA_DISABLE_tolua_get_PropertyCast__TypeValue_pSpotLight_ptr
1544 static int tolua_get_PropertyCast__TypeValue_pSpotLight_ptr(lua_State* tolua_S)
1545 {
1546   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1547 #ifndef TOLUA_RELEASE
1548   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'pSpotLight'",NULL);
1549 #endif
1550    tolua_pushusertype(tolua_S,(void*)self->pSpotLight,"SpotLight");
1551  return 1;
1552 }
1553 #endif //#ifndef TOLUA_DISABLE
1554
1555 /* set function: pSpotLight of class  TypeValue */
1556 #ifndef TOLUA_DISABLE_tolua_set_PropertyCast__TypeValue_pSpotLight_ptr
1557 static int tolua_set_PropertyCast__TypeValue_pSpotLight_ptr(lua_State* tolua_S)
1558 {
1559   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1560 #ifndef TOLUA_RELEASE
1561   tolua_Error tolua_err;
1562   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'pSpotLight'",NULL);
1563   if (!tolua_isusertype(tolua_S,2,"SpotLight",0,&tolua_err))
1564    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
1565 #endif
1566   self->pSpotLight = ((SpotLight*)  tolua_tousertype(tolua_S,2,0))
1567 ;
1568  return 0;
1569 }
1570 #endif //#ifndef TOLUA_DISABLE
1571
1572 /* get function: pDirectionalLight of class  TypeValue */
1573 #ifndef TOLUA_DISABLE_tolua_get_PropertyCast__TypeValue_pDirectionalLight_ptr
1574 static int tolua_get_PropertyCast__TypeValue_pDirectionalLight_ptr(lua_State* tolua_S)
1575 {
1576   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1577 #ifndef TOLUA_RELEASE
1578   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'pDirectionalLight'",NULL);
1579 #endif
1580    tolua_pushusertype(tolua_S,(void*)self->pDirectionalLight,"DirectionalLight");
1581  return 1;
1582 }
1583 #endif //#ifndef TOLUA_DISABLE
1584
1585 /* set function: pDirectionalLight of class  TypeValue */
1586 #ifndef TOLUA_DISABLE_tolua_set_PropertyCast__TypeValue_pDirectionalLight_ptr
1587 static int tolua_set_PropertyCast__TypeValue_pDirectionalLight_ptr(lua_State* tolua_S)
1588 {
1589   PropertyCast::TypeValue* self = (PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,1,0);
1590 #ifndef TOLUA_RELEASE
1591   tolua_Error tolua_err;
1592   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'pDirectionalLight'",NULL);
1593   if (!tolua_isusertype(tolua_S,2,"DirectionalLight",0,&tolua_err))
1594    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
1595 #endif
1596   self->pDirectionalLight = ((DirectionalLight*)  tolua_tousertype(tolua_S,2,0))
1597 ;
1598  return 0;
1599 }
1600 #endif //#ifndef TOLUA_DISABLE
1601
1602 /* get function: value of class  PropertyCast */
1603 #ifndef TOLUA_DISABLE_tolua_get_PropertyCast_value
1604 static int tolua_get_PropertyCast_value(lua_State* tolua_S)
1605 {
1606   PropertyCast* self = (PropertyCast*)  tolua_tousertype(tolua_S,1,0);
1607 #ifndef TOLUA_RELEASE
1608   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'value'",NULL);
1609 #endif
1610    tolua_pushusertype(tolua_S,(void*)&self->value,"PropertyCast::TypeValue");
1611  return 1;
1612 }
1613 #endif //#ifndef TOLUA_DISABLE
1614
1615 /* set function: value of class  PropertyCast */
1616 #ifndef TOLUA_DISABLE_tolua_set_PropertyCast_value
1617 static int tolua_set_PropertyCast_value(lua_State* tolua_S)
1618 {
1619   PropertyCast* self = (PropertyCast*)  tolua_tousertype(tolua_S,1,0);
1620 #ifndef TOLUA_RELEASE
1621   tolua_Error tolua_err;
1622   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'value'",NULL);
1623   if ((tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"PropertyCast::TypeValue",0,&tolua_err)))
1624    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
1625 #endif
1626   self->value = *((PropertyCast::TypeValue*)  tolua_tousertype(tolua_S,2,0))
1627 ;
1628  return 0;
1629 }
1630 #endif //#ifndef TOLUA_DISABLE
1631
1632 /* method: GetEnabled of class  UnitLight */
1633 #ifndef TOLUA_DISABLE_tolua__UnitLight_GetEnabled00
1634 static int tolua__UnitLight_GetEnabled00(lua_State* tolua_S)
1635 {
1636 #ifndef TOLUA_RELEASE
1637  tolua_Error tolua_err;
1638  if (
1639      !tolua_isusertype(tolua_S,1,"const UnitLight",0,&tolua_err) ||
1640      !tolua_isnoobj(tolua_S,2,&tolua_err)
1641  )
1642   goto tolua_lerror;
1643  else
1644 #endif
1645  {
1646   const UnitLight* self = (const UnitLight*)  tolua_tousertype(tolua_S,1,0);
1647 #ifndef TOLUA_RELEASE
1648   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetEnabled'", NULL);
1649 #endif
1650   {
1651    bool tolua_ret = (bool)  self->GetEnabled();
1652    tolua_pushboolean(tolua_S,(bool)tolua_ret);
1653   }
1654  }
1655  return 1;
1656 #ifndef TOLUA_RELEASE
1657  tolua_lerror:
1658  tolua_error(tolua_S,"#ferror in function 'GetEnabled'.",&tolua_err);
1659  return 0;
1660 #endif
1661 }
1662 #endif //#ifndef TOLUA_DISABLE
1663
1664 /* method: GetColour of class  UnitLight */
1665 #ifndef TOLUA_DISABLE_tolua__UnitLight_GetColour00
1666 static int tolua__UnitLight_GetColour00(lua_State* tolua_S)
1667 {
1668 #ifndef TOLUA_RELEASE
1669  tolua_Error tolua_err;
1670  if (
1671      !tolua_isusertype(tolua_S,1,"const UnitLight",0,&tolua_err) ||
1672      !tolua_isnoobj(tolua_S,2,&tolua_err)
1673  )
1674   goto tolua_lerror;
1675  else
1676 #endif
1677  {
1678   const UnitLight* self = (const UnitLight*)  tolua_tousertype(tolua_S,1,0);
1679 #ifndef TOLUA_RELEASE
1680   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetColour'", NULL);
1681 #endif
1682   {
1683    const Vector3& tolua_ret = (const Vector3&)  self->GetColour();
1684    {
1685 #ifdef __cplusplus
1686     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
1687      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
1688     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
1689 #else
1690     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(const Vector3));
1691      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
1692     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
1693 #endif
1694    }
1695   }
1696  }
1697  return 1;
1698 #ifndef TOLUA_RELEASE
1699  tolua_lerror:
1700  tolua_error(tolua_S,"#ferror in function 'GetColour'.",&tolua_err);
1701  return 0;
1702 #endif
1703 }
1704 #endif //#ifndef TOLUA_DISABLE
1705
1706 /* method: GetIntensity of class  UnitLight */
1707 #ifndef TOLUA_DISABLE_tolua__UnitLight_GetIntensity00
1708 static int tolua__UnitLight_GetIntensity00(lua_State* tolua_S)
1709 {
1710 #ifndef TOLUA_RELEASE
1711  tolua_Error tolua_err;
1712  if (
1713      !tolua_isusertype(tolua_S,1,"const UnitLight",0,&tolua_err) ||
1714      !tolua_isnoobj(tolua_S,2,&tolua_err)
1715  )
1716   goto tolua_lerror;
1717  else
1718 #endif
1719  {
1720   const UnitLight* self = (const UnitLight*)  tolua_tousertype(tolua_S,1,0);
1721 #ifndef TOLUA_RELEASE
1722   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetIntensity'", NULL);
1723 #endif
1724   {
1725    float tolua_ret = (float)  self->GetIntensity();
1726    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
1727   }
1728  }
1729  return 1;
1730 #ifndef TOLUA_RELEASE
1731  tolua_lerror:
1732  tolua_error(tolua_S,"#ferror in function 'GetIntensity'.",&tolua_err);
1733  return 0;
1734 #endif
1735 }
1736 #endif //#ifndef TOLUA_DISABLE
1737
1738 /* method: GetName of class  UnitLight */
1739 #ifndef TOLUA_DISABLE_tolua__UnitLight_GetName00
1740 static int tolua__UnitLight_GetName00(lua_State* tolua_S)
1741 {
1742 #ifndef TOLUA_RELEASE
1743  tolua_Error tolua_err;
1744  if (
1745      !tolua_isusertype(tolua_S,1,"const UnitLight",0,&tolua_err) ||
1746      !tolua_isnoobj(tolua_S,2,&tolua_err)
1747  )
1748   goto tolua_lerror;
1749  else
1750 #endif
1751  {
1752   const UnitLight* self = (const UnitLight*)  tolua_tousertype(tolua_S,1,0);
1753 #ifndef TOLUA_RELEASE
1754   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetName'", NULL);
1755 #endif
1756   {
1757    const std::string tolua_ret = (const std::string)  self->GetName();
1758    tolua_pushcppstring(tolua_S,(const char*)tolua_ret);
1759   }
1760  }
1761  return 1;
1762 #ifndef TOLUA_RELEASE
1763  tolua_lerror:
1764  tolua_error(tolua_S,"#ferror in function 'GetName'.",&tolua_err);
1765  return 0;
1766 #endif
1767 }
1768 #endif //#ifndef TOLUA_DISABLE
1769
1770 /* method: SetEnabled of class  UnitLight */
1771 #ifndef TOLUA_DISABLE_tolua__UnitLight_SetEnabled00
1772 static int tolua__UnitLight_SetEnabled00(lua_State* tolua_S)
1773 {
1774 #ifndef TOLUA_RELEASE
1775  tolua_Error tolua_err;
1776  if (
1777      !tolua_isusertype(tolua_S,1,"UnitLight",0,&tolua_err) ||
1778      !tolua_isboolean(tolua_S,2,0,&tolua_err) ||
1779      !tolua_isnoobj(tolua_S,3,&tolua_err)
1780  )
1781   goto tolua_lerror;
1782  else
1783 #endif
1784  {
1785   UnitLight* self = (UnitLight*)  tolua_tousertype(tolua_S,1,0);
1786   bool isEnabled = ((bool)  tolua_toboolean(tolua_S,2,0));
1787 #ifndef TOLUA_RELEASE
1788   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetEnabled'", NULL);
1789 #endif
1790   {
1791    self->SetEnabled(isEnabled);
1792   }
1793  }
1794  return 0;
1795 #ifndef TOLUA_RELEASE
1796  tolua_lerror:
1797  tolua_error(tolua_S,"#ferror in function 'SetEnabled'.",&tolua_err);
1798  return 0;
1799 #endif
1800 }
1801 #endif //#ifndef TOLUA_DISABLE
1802
1803 /* method: SetColour of class  UnitLight */
1804 #ifndef TOLUA_DISABLE_tolua__UnitLight_SetColour00
1805 static int tolua__UnitLight_SetColour00(lua_State* tolua_S)
1806 {
1807 #ifndef TOLUA_RELEASE
1808  tolua_Error tolua_err;
1809  if (
1810      !tolua_isusertype(tolua_S,1,"UnitLight",0,&tolua_err) ||
1811      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
1812      !tolua_isnoobj(tolua_S,3,&tolua_err)
1813  )
1814   goto tolua_lerror;
1815  else
1816 #endif
1817  {
1818   UnitLight* self = (UnitLight*)  tolua_tousertype(tolua_S,1,0);
1819   const Vector3* colour = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
1820 #ifndef TOLUA_RELEASE
1821   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetColour'", NULL);
1822 #endif
1823   {
1824    self->SetColour(*colour);
1825   }
1826  }
1827  return 0;
1828 #ifndef TOLUA_RELEASE
1829  tolua_lerror:
1830  tolua_error(tolua_S,"#ferror in function 'SetColour'.",&tolua_err);
1831  return 0;
1832 #endif
1833 }
1834 #endif //#ifndef TOLUA_DISABLE
1835
1836 /* method: SetColour of class  UnitLight */
1837 #ifndef TOLUA_DISABLE_tolua__UnitLight_SetColour01
1838 static int tolua__UnitLight_SetColour01(lua_State* tolua_S)
1839 {
1840  tolua_Error tolua_err;
1841  if (
1842      !tolua_isusertype(tolua_S,1,"UnitLight",0,&tolua_err) ||
1843      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
1844      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
1845      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
1846      !tolua_isnoobj(tolua_S,5,&tolua_err)
1847  )
1848   goto tolua_lerror;
1849  else
1850  {
1851   UnitLight* self = (UnitLight*)  tolua_tousertype(tolua_S,1,0);
1852   float red = ((float)  tolua_tonumber(tolua_S,2,0));
1853   float green = ((float)  tolua_tonumber(tolua_S,3,0));
1854   float blue = ((float)  tolua_tonumber(tolua_S,4,0));
1855 #ifndef TOLUA_RELEASE
1856   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetColour'", NULL);
1857 #endif
1858   {
1859    self->SetColour(red,green,blue);
1860   }
1861  }
1862  return 0;
1863 tolua_lerror:
1864  return tolua__UnitLight_SetColour00(tolua_S);
1865 }
1866 #endif //#ifndef TOLUA_DISABLE
1867
1868 /* method: SetIntensity of class  UnitLight */
1869 #ifndef TOLUA_DISABLE_tolua__UnitLight_SetIntensity00
1870 static int tolua__UnitLight_SetIntensity00(lua_State* tolua_S)
1871 {
1872 #ifndef TOLUA_RELEASE
1873  tolua_Error tolua_err;
1874  if (
1875      !tolua_isusertype(tolua_S,1,"UnitLight",0,&tolua_err) ||
1876      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
1877      !tolua_isnoobj(tolua_S,3,&tolua_err)
1878  )
1879   goto tolua_lerror;
1880  else
1881 #endif
1882  {
1883   UnitLight* self = (UnitLight*)  tolua_tousertype(tolua_S,1,0);
1884   float intensity = ((float)  tolua_tonumber(tolua_S,2,0));
1885 #ifndef TOLUA_RELEASE
1886   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetIntensity'", NULL);
1887 #endif
1888   {
1889    self->SetIntensity(intensity);
1890   }
1891  }
1892  return 0;
1893 #ifndef TOLUA_RELEASE
1894  tolua_lerror:
1895  tolua_error(tolua_S,"#ferror in function 'SetIntensity'.",&tolua_err);
1896  return 0;
1897 #endif
1898 }
1899 #endif //#ifndef TOLUA_DISABLE
1900
1901 /* method: CreatePointLight of class  PointLight */
1902 #ifndef TOLUA_DISABLE_tolua__PointLight_CreatePointLight00
1903 static int tolua__PointLight_CreatePointLight00(lua_State* tolua_S)
1904 {
1905 #ifndef TOLUA_RELEASE
1906  tolua_Error tolua_err;
1907  if (
1908      !tolua_isusertable(tolua_S,1,"PointLight",0,&tolua_err) ||
1909      !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||
1910      !tolua_isnoobj(tolua_S,3,&tolua_err)
1911  )
1912   goto tolua_lerror;
1913  else
1914 #endif
1915  {
1916   const string name = ((const string)  tolua_tocppstring(tolua_S,2,0));
1917   {
1918    PointLight* tolua_ret = (PointLight*)  PointLight::CreatePointLight(name);
1919     tolua_pushusertype(tolua_S,(void*)tolua_ret,"PointLight");
1920    tolua_pushcppstring(tolua_S,(const char*)name);
1921   }
1922  }
1923  return 2;
1924 #ifndef TOLUA_RELEASE
1925  tolua_lerror:
1926  tolua_error(tolua_S,"#ferror in function 'CreatePointLight'.",&tolua_err);
1927  return 0;
1928 #endif
1929 }
1930 #endif //#ifndef TOLUA_DISABLE
1931
1932 /* method: GetPosition of class  PointLight */
1933 #ifndef TOLUA_DISABLE_tolua__PointLight_GetPosition00
1934 static int tolua__PointLight_GetPosition00(lua_State* tolua_S)
1935 {
1936 #ifndef TOLUA_RELEASE
1937  tolua_Error tolua_err;
1938  if (
1939      !tolua_isusertype(tolua_S,1,"const PointLight",0,&tolua_err) ||
1940      !tolua_isnoobj(tolua_S,2,&tolua_err)
1941  )
1942   goto tolua_lerror;
1943  else
1944 #endif
1945  {
1946   const PointLight* self = (const PointLight*)  tolua_tousertype(tolua_S,1,0);
1947 #ifndef TOLUA_RELEASE
1948   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetPosition'", NULL);
1949 #endif
1950   {
1951    const Vector3& tolua_ret = (const Vector3&)  self->GetPosition();
1952    {
1953 #ifdef __cplusplus
1954     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
1955      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
1956     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
1957 #else
1958     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(const Vector3));
1959      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
1960     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
1961 #endif
1962    }
1963   }
1964  }
1965  return 1;
1966 #ifndef TOLUA_RELEASE
1967  tolua_lerror:
1968  tolua_error(tolua_S,"#ferror in function 'GetPosition'.",&tolua_err);
1969  return 0;
1970 #endif
1971 }
1972 #endif //#ifndef TOLUA_DISABLE
1973
1974 /* method: SetPosition of class  PointLight */
1975 #ifndef TOLUA_DISABLE_tolua__PointLight_SetPosition00
1976 static int tolua__PointLight_SetPosition00(lua_State* tolua_S)
1977 {
1978 #ifndef TOLUA_RELEASE
1979  tolua_Error tolua_err;
1980  if (
1981      !tolua_isusertype(tolua_S,1,"PointLight",0,&tolua_err) ||
1982      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
1983      !tolua_isnoobj(tolua_S,3,&tolua_err)
1984  )
1985   goto tolua_lerror;
1986  else
1987 #endif
1988  {
1989   PointLight* self = (PointLight*)  tolua_tousertype(tolua_S,1,0);
1990   const Vector3* position = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
1991 #ifndef TOLUA_RELEASE
1992   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetPosition'", NULL);
1993 #endif
1994   {
1995    self->SetPosition(*position);
1996   }
1997  }
1998  return 0;
1999 #ifndef TOLUA_RELEASE
2000  tolua_lerror:
2001  tolua_error(tolua_S,"#ferror in function 'SetPosition'.",&tolua_err);
2002  return 0;
2003 #endif
2004 }
2005 #endif //#ifndef TOLUA_DISABLE
2006
2007 /* method: SetPosition of class  PointLight */
2008 #ifndef TOLUA_DISABLE_tolua__PointLight_SetPosition01
2009 static int tolua__PointLight_SetPosition01(lua_State* tolua_S)
2010 {
2011  tolua_Error tolua_err;
2012  if (
2013      !tolua_isusertype(tolua_S,1,"PointLight",0,&tolua_err) ||
2014      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
2015      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
2016      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
2017      !tolua_isnoobj(tolua_S,5,&tolua_err)
2018  )
2019   goto tolua_lerror;
2020  else
2021  {
2022   PointLight* self = (PointLight*)  tolua_tousertype(tolua_S,1,0);
2023   float x = ((float)  tolua_tonumber(tolua_S,2,0));
2024   float y = ((float)  tolua_tonumber(tolua_S,3,0));
2025   float z = ((float)  tolua_tonumber(tolua_S,4,0));
2026 #ifndef TOLUA_RELEASE
2027   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetPosition'", NULL);
2028 #endif
2029   {
2030    self->SetPosition(x,y,z);
2031   }
2032  }
2033  return 0;
2034 tolua_lerror:
2035  return tolua__PointLight_SetPosition00(tolua_S);
2036 }
2037 #endif //#ifndef TOLUA_DISABLE
2038
2039 /* method: CreateSpotLight of class  SpotLight */
2040 #ifndef TOLUA_DISABLE_tolua__SpotLight_CreateSpotLight00
2041 static int tolua__SpotLight_CreateSpotLight00(lua_State* tolua_S)
2042 {
2043 #ifndef TOLUA_RELEASE
2044  tolua_Error tolua_err;
2045  if (
2046      !tolua_isusertable(tolua_S,1,"SpotLight",0,&tolua_err) ||
2047      !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||
2048      !tolua_isnoobj(tolua_S,3,&tolua_err)
2049  )
2050   goto tolua_lerror;
2051  else
2052 #endif
2053  {
2054   const string name = ((const string)  tolua_tocppstring(tolua_S,2,0));
2055   {
2056    SpotLight* tolua_ret = (SpotLight*)  SpotLight::CreateSpotLight(name);
2057     tolua_pushusertype(tolua_S,(void*)tolua_ret,"SpotLight");
2058    tolua_pushcppstring(tolua_S,(const char*)name);
2059   }
2060  }
2061  return 2;
2062 #ifndef TOLUA_RELEASE
2063  tolua_lerror:
2064  tolua_error(tolua_S,"#ferror in function 'CreateSpotLight'.",&tolua_err);
2065  return 0;
2066 #endif
2067 }
2068 #endif //#ifndef TOLUA_DISABLE
2069
2070 /* method: GetTarget of class  SpotLight */
2071 #ifndef TOLUA_DISABLE_tolua__SpotLight_GetTarget00
2072 static int tolua__SpotLight_GetTarget00(lua_State* tolua_S)
2073 {
2074 #ifndef TOLUA_RELEASE
2075  tolua_Error tolua_err;
2076  if (
2077      !tolua_isusertype(tolua_S,1,"const SpotLight",0,&tolua_err) ||
2078      !tolua_isnoobj(tolua_S,2,&tolua_err)
2079  )
2080   goto tolua_lerror;
2081  else
2082 #endif
2083  {
2084   const SpotLight* self = (const SpotLight*)  tolua_tousertype(tolua_S,1,0);
2085 #ifndef TOLUA_RELEASE
2086   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetTarget'", NULL);
2087 #endif
2088   {
2089    const Vector3& tolua_ret = (const Vector3&)  self->GetTarget();
2090    {
2091 #ifdef __cplusplus
2092     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
2093      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
2094     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2095 #else
2096     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(const Vector3));
2097      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
2098     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2099 #endif
2100    }
2101   }
2102  }
2103  return 1;
2104 #ifndef TOLUA_RELEASE
2105  tolua_lerror:
2106  tolua_error(tolua_S,"#ferror in function 'GetTarget'.",&tolua_err);
2107  return 0;
2108 #endif
2109 }
2110 #endif //#ifndef TOLUA_DISABLE
2111
2112 /* method: GetAngleOpening of class  SpotLight */
2113 #ifndef TOLUA_DISABLE_tolua__SpotLight_GetAngleOpening00
2114 static int tolua__SpotLight_GetAngleOpening00(lua_State* tolua_S)
2115 {
2116 #ifndef TOLUA_RELEASE
2117  tolua_Error tolua_err;
2118  if (
2119      !tolua_isusertype(tolua_S,1,"const SpotLight",0,&tolua_err) ||
2120      !tolua_isnoobj(tolua_S,2,&tolua_err)
2121  )
2122   goto tolua_lerror;
2123  else
2124 #endif
2125  {
2126   const SpotLight* self = (const SpotLight*)  tolua_tousertype(tolua_S,1,0);
2127 #ifndef TOLUA_RELEASE
2128   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetAngleOpening'", NULL);
2129 #endif
2130   {
2131    float tolua_ret = (float)  self->GetAngleOpening();
2132    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
2133   }
2134  }
2135  return 1;
2136 #ifndef TOLUA_RELEASE
2137  tolua_lerror:
2138  tolua_error(tolua_S,"#ferror in function 'GetAngleOpening'.",&tolua_err);
2139  return 0;
2140 #endif
2141 }
2142 #endif //#ifndef TOLUA_DISABLE
2143
2144 /* method: GetAngleFadeOut of class  SpotLight */
2145 #ifndef TOLUA_DISABLE_tolua__SpotLight_GetAngleFadeOut00
2146 static int tolua__SpotLight_GetAngleFadeOut00(lua_State* tolua_S)
2147 {
2148 #ifndef TOLUA_RELEASE
2149  tolua_Error tolua_err;
2150  if (
2151      !tolua_isusertype(tolua_S,1,"const SpotLight",0,&tolua_err) ||
2152      !tolua_isnoobj(tolua_S,2,&tolua_err)
2153  )
2154   goto tolua_lerror;
2155  else
2156 #endif
2157  {
2158   const SpotLight* self = (const SpotLight*)  tolua_tousertype(tolua_S,1,0);
2159 #ifndef TOLUA_RELEASE
2160   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetAngleFadeOut'", NULL);
2161 #endif
2162   {
2163    float tolua_ret = (float)  self->GetAngleFadeOut();
2164    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
2165   }
2166  }
2167  return 1;
2168 #ifndef TOLUA_RELEASE
2169  tolua_lerror:
2170  tolua_error(tolua_S,"#ferror in function 'GetAngleFadeOut'.",&tolua_err);
2171  return 0;
2172 #endif
2173 }
2174 #endif //#ifndef TOLUA_DISABLE
2175
2176 /* method: SetTarget of class  SpotLight */
2177 #ifndef TOLUA_DISABLE_tolua__SpotLight_SetTarget00
2178 static int tolua__SpotLight_SetTarget00(lua_State* tolua_S)
2179 {
2180 #ifndef TOLUA_RELEASE
2181  tolua_Error tolua_err;
2182  if (
2183      !tolua_isusertype(tolua_S,1,"SpotLight",0,&tolua_err) ||
2184      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
2185      !tolua_isnoobj(tolua_S,3,&tolua_err)
2186  )
2187   goto tolua_lerror;
2188  else
2189 #endif
2190  {
2191   SpotLight* self = (SpotLight*)  tolua_tousertype(tolua_S,1,0);
2192   const Vector3* target = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
2193 #ifndef TOLUA_RELEASE
2194   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetTarget'", NULL);
2195 #endif
2196   {
2197    self->SetTarget(*target);
2198   }
2199  }
2200  return 0;
2201 #ifndef TOLUA_RELEASE
2202  tolua_lerror:
2203  tolua_error(tolua_S,"#ferror in function 'SetTarget'.",&tolua_err);
2204  return 0;
2205 #endif
2206 }
2207 #endif //#ifndef TOLUA_DISABLE
2208
2209 /* method: SetTarget of class  SpotLight */
2210 #ifndef TOLUA_DISABLE_tolua__SpotLight_SetTarget01
2211 static int tolua__SpotLight_SetTarget01(lua_State* tolua_S)
2212 {
2213  tolua_Error tolua_err;
2214  if (
2215      !tolua_isusertype(tolua_S,1,"SpotLight",0,&tolua_err) ||
2216      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
2217      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
2218      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
2219      !tolua_isnoobj(tolua_S,5,&tolua_err)
2220  )
2221   goto tolua_lerror;
2222  else
2223  {
2224   SpotLight* self = (SpotLight*)  tolua_tousertype(tolua_S,1,0);
2225   float x = ((float)  tolua_tonumber(tolua_S,2,0));
2226   float y = ((float)  tolua_tonumber(tolua_S,3,0));
2227   float z = ((float)  tolua_tonumber(tolua_S,4,0));
2228 #ifndef TOLUA_RELEASE
2229   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetTarget'", NULL);
2230 #endif
2231   {
2232    self->SetTarget(x,y,z);
2233   }
2234  }
2235  return 0;
2236 tolua_lerror:
2237  return tolua__SpotLight_SetTarget00(tolua_S);
2238 }
2239 #endif //#ifndef TOLUA_DISABLE
2240
2241 /* method: SetAngleOpening of class  SpotLight */
2242 #ifndef TOLUA_DISABLE_tolua__SpotLight_SetAngleOpening00
2243 static int tolua__SpotLight_SetAngleOpening00(lua_State* tolua_S)
2244 {
2245 #ifndef TOLUA_RELEASE
2246  tolua_Error tolua_err;
2247  if (
2248      !tolua_isusertype(tolua_S,1,"SpotLight",0,&tolua_err) ||
2249      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
2250      !tolua_isnoobj(tolua_S,3,&tolua_err)
2251  )
2252   goto tolua_lerror;
2253  else
2254 #endif
2255  {
2256   SpotLight* self = (SpotLight*)  tolua_tousertype(tolua_S,1,0);
2257   float angleOpening = ((float)  tolua_tonumber(tolua_S,2,0));
2258 #ifndef TOLUA_RELEASE
2259   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetAngleOpening'", NULL);
2260 #endif
2261   {
2262    bool tolua_ret = (bool)  self->SetAngleOpening(angleOpening);
2263    tolua_pushboolean(tolua_S,(bool)tolua_ret);
2264   }
2265  }
2266  return 1;
2267 #ifndef TOLUA_RELEASE
2268  tolua_lerror:
2269  tolua_error(tolua_S,"#ferror in function 'SetAngleOpening'.",&tolua_err);
2270  return 0;
2271 #endif
2272 }
2273 #endif //#ifndef TOLUA_DISABLE
2274
2275 /* method: SetAngleFadeOut of class  SpotLight */
2276 #ifndef TOLUA_DISABLE_tolua__SpotLight_SetAngleFadeOut00
2277 static int tolua__SpotLight_SetAngleFadeOut00(lua_State* tolua_S)
2278 {
2279 #ifndef TOLUA_RELEASE
2280  tolua_Error tolua_err;
2281  if (
2282      !tolua_isusertype(tolua_S,1,"SpotLight",0,&tolua_err) ||
2283      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
2284      !tolua_isnoobj(tolua_S,3,&tolua_err)
2285  )
2286   goto tolua_lerror;
2287  else
2288 #endif
2289  {
2290   SpotLight* self = (SpotLight*)  tolua_tousertype(tolua_S,1,0);
2291   float angleFadeOut = ((float)  tolua_tonumber(tolua_S,2,0));
2292 #ifndef TOLUA_RELEASE
2293   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetAngleFadeOut'", NULL);
2294 #endif
2295   {
2296    bool tolua_ret = (bool)  self->SetAngleFadeOut(angleFadeOut);
2297    tolua_pushboolean(tolua_S,(bool)tolua_ret);
2298   }
2299  }
2300  return 1;
2301 #ifndef TOLUA_RELEASE
2302  tolua_lerror:
2303  tolua_error(tolua_S,"#ferror in function 'SetAngleFadeOut'.",&tolua_err);
2304  return 0;
2305 #endif
2306 }
2307 #endif //#ifndef TOLUA_DISABLE
2308
2309 /* method: CreateDirectionalLight of class  DirectionalLight */
2310 #ifndef TOLUA_DISABLE_tolua__DirectionalLight_CreateDirectionalLight00
2311 static int tolua__DirectionalLight_CreateDirectionalLight00(lua_State* tolua_S)
2312 {
2313 #ifndef TOLUA_RELEASE
2314  tolua_Error tolua_err;
2315  if (
2316      !tolua_isusertable(tolua_S,1,"DirectionalLight",0,&tolua_err) ||
2317      !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||
2318      !tolua_isnoobj(tolua_S,3,&tolua_err)
2319  )
2320   goto tolua_lerror;
2321  else
2322 #endif
2323  {
2324   const string name = ((const string)  tolua_tocppstring(tolua_S,2,0));
2325   {
2326    DirectionalLight* tolua_ret = (DirectionalLight*)  DirectionalLight::CreateDirectionalLight(name);
2327     tolua_pushusertype(tolua_S,(void*)tolua_ret,"DirectionalLight");
2328    tolua_pushcppstring(tolua_S,(const char*)name);
2329   }
2330  }
2331  return 2;
2332 #ifndef TOLUA_RELEASE
2333  tolua_lerror:
2334  tolua_error(tolua_S,"#ferror in function 'CreateDirectionalLight'.",&tolua_err);
2335  return 0;
2336 #endif
2337 }
2338 #endif //#ifndef TOLUA_DISABLE
2339
2340 /* method: GetDirection of class  DirectionalLight */
2341 #ifndef TOLUA_DISABLE_tolua__DirectionalLight_GetDirection00
2342 static int tolua__DirectionalLight_GetDirection00(lua_State* tolua_S)
2343 {
2344 #ifndef TOLUA_RELEASE
2345  tolua_Error tolua_err;
2346  if (
2347      !tolua_isusertype(tolua_S,1,"const DirectionalLight",0,&tolua_err) ||
2348      !tolua_isnoobj(tolua_S,2,&tolua_err)
2349  )
2350   goto tolua_lerror;
2351  else
2352 #endif
2353  {
2354   const DirectionalLight* self = (const DirectionalLight*)  tolua_tousertype(tolua_S,1,0);
2355 #ifndef TOLUA_RELEASE
2356   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetDirection'", NULL);
2357 #endif
2358   {
2359    const Vector3& tolua_ret = (const Vector3&)  self->GetDirection();
2360    {
2361 #ifdef __cplusplus
2362     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
2363      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
2364     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2365 #else
2366     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(const Vector3));
2367      tolua_pushusertype(tolua_S,tolua_obj,"const Vector3");
2368     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2369 #endif
2370    }
2371   }
2372  }
2373  return 1;
2374 #ifndef TOLUA_RELEASE
2375  tolua_lerror:
2376  tolua_error(tolua_S,"#ferror in function 'GetDirection'.",&tolua_err);
2377  return 0;
2378 #endif
2379 }
2380 #endif //#ifndef TOLUA_DISABLE
2381
2382 /* method: SetDirection of class  DirectionalLight */
2383 #ifndef TOLUA_DISABLE_tolua__DirectionalLight_SetDirection00
2384 static int tolua__DirectionalLight_SetDirection00(lua_State* tolua_S)
2385 {
2386 #ifndef TOLUA_RELEASE
2387  tolua_Error tolua_err;
2388  if (
2389      !tolua_isusertype(tolua_S,1,"DirectionalLight",0,&tolua_err) ||
2390      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
2391      !tolua_isnoobj(tolua_S,3,&tolua_err)
2392  )
2393   goto tolua_lerror;
2394  else
2395 #endif
2396  {
2397   DirectionalLight* self = (DirectionalLight*)  tolua_tousertype(tolua_S,1,0);
2398   const Vector3* direction = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
2399 #ifndef TOLUA_RELEASE
2400   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetDirection'", NULL);
2401 #endif
2402   {
2403    self->SetDirection(*direction);
2404   }
2405  }
2406  return 0;
2407 #ifndef TOLUA_RELEASE
2408  tolua_lerror:
2409  tolua_error(tolua_S,"#ferror in function 'SetDirection'.",&tolua_err);
2410  return 0;
2411 #endif
2412 }
2413 #endif //#ifndef TOLUA_DISABLE
2414
2415 /* method: SetDirection of class  DirectionalLight */
2416 #ifndef TOLUA_DISABLE_tolua__DirectionalLight_SetDirection01
2417 static int tolua__DirectionalLight_SetDirection01(lua_State* tolua_S)
2418 {
2419  tolua_Error tolua_err;
2420  if (
2421      !tolua_isusertype(tolua_S,1,"DirectionalLight",0,&tolua_err) ||
2422      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
2423      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
2424      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
2425      !tolua_isnoobj(tolua_S,5,&tolua_err)
2426  )
2427   goto tolua_lerror;
2428  else
2429  {
2430   DirectionalLight* self = (DirectionalLight*)  tolua_tousertype(tolua_S,1,0);
2431   float x = ((float)  tolua_tonumber(tolua_S,2,0));
2432   float y = ((float)  tolua_tonumber(tolua_S,3,0));
2433   float z = ((float)  tolua_tonumber(tolua_S,4,0));
2434 #ifndef TOLUA_RELEASE
2435   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetDirection'", NULL);
2436 #endif
2437   {
2438    self->SetDirection(x,y,z);
2439   }
2440  }
2441  return 0;
2442 tolua_lerror:
2443  return tolua__DirectionalLight_SetDirection00(tolua_S);
2444 }
2445 #endif //#ifndef TOLUA_DISABLE
2446
2447 /* get function: x of class  Vector3 */
2448 #ifndef TOLUA_DISABLE_tolua_get_Vector3_x
2449 static int tolua_get_Vector3_x(lua_State* tolua_S)
2450 {
2451   Vector3* self = (Vector3*)  tolua_tousertype(tolua_S,1,0);
2452 #ifndef TOLUA_RELEASE
2453   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'x'",NULL);
2454 #endif
2455   tolua_pushnumber(tolua_S,(lua_Number)self->x);
2456  return 1;
2457 }
2458 #endif //#ifndef TOLUA_DISABLE
2459
2460 /* set function: x of class  Vector3 */
2461 #ifndef TOLUA_DISABLE_tolua_set_Vector3_x
2462 static int tolua_set_Vector3_x(lua_State* tolua_S)
2463 {
2464   Vector3* self = (Vector3*)  tolua_tousertype(tolua_S,1,0);
2465 #ifndef TOLUA_RELEASE
2466   tolua_Error tolua_err;
2467   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'x'",NULL);
2468   if (!tolua_isnumber(tolua_S,2,0,&tolua_err))
2469    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
2470 #endif
2471   self->x = ((float)  tolua_tonumber(tolua_S,2,0))
2472 ;
2473  return 0;
2474 }
2475 #endif //#ifndef TOLUA_DISABLE
2476
2477 /* get function: y of class  Vector3 */
2478 #ifndef TOLUA_DISABLE_tolua_get_Vector3_y
2479 static int tolua_get_Vector3_y(lua_State* tolua_S)
2480 {
2481   Vector3* self = (Vector3*)  tolua_tousertype(tolua_S,1,0);
2482 #ifndef TOLUA_RELEASE
2483   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'y'",NULL);
2484 #endif
2485   tolua_pushnumber(tolua_S,(lua_Number)self->y);
2486  return 1;
2487 }
2488 #endif //#ifndef TOLUA_DISABLE
2489
2490 /* set function: y of class  Vector3 */
2491 #ifndef TOLUA_DISABLE_tolua_set_Vector3_y
2492 static int tolua_set_Vector3_y(lua_State* tolua_S)
2493 {
2494   Vector3* self = (Vector3*)  tolua_tousertype(tolua_S,1,0);
2495 #ifndef TOLUA_RELEASE
2496   tolua_Error tolua_err;
2497   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'y'",NULL);
2498   if (!tolua_isnumber(tolua_S,2,0,&tolua_err))
2499    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
2500 #endif
2501   self->y = ((float)  tolua_tonumber(tolua_S,2,0))
2502 ;
2503  return 0;
2504 }
2505 #endif //#ifndef TOLUA_DISABLE
2506
2507 /* get function: z of class  Vector3 */
2508 #ifndef TOLUA_DISABLE_tolua_get_Vector3_z
2509 static int tolua_get_Vector3_z(lua_State* tolua_S)
2510 {
2511   Vector3* self = (Vector3*)  tolua_tousertype(tolua_S,1,0);
2512 #ifndef TOLUA_RELEASE
2513   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'z'",NULL);
2514 #endif
2515   tolua_pushnumber(tolua_S,(lua_Number)self->z);
2516  return 1;
2517 }
2518 #endif //#ifndef TOLUA_DISABLE
2519
2520 /* set function: z of class  Vector3 */
2521 #ifndef TOLUA_DISABLE_tolua_set_Vector3_z
2522 static int tolua_set_Vector3_z(lua_State* tolua_S)
2523 {
2524   Vector3* self = (Vector3*)  tolua_tousertype(tolua_S,1,0);
2525 #ifndef TOLUA_RELEASE
2526   tolua_Error tolua_err;
2527   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'z'",NULL);
2528   if (!tolua_isnumber(tolua_S,2,0,&tolua_err))
2529    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
2530 #endif
2531   self->z = ((float)  tolua_tonumber(tolua_S,2,0))
2532 ;
2533  return 0;
2534 }
2535 #endif //#ifndef TOLUA_DISABLE
2536
2537 /* method: new of class  Vector3 */
2538 #ifndef TOLUA_DISABLE_tolua__Vector3_new00
2539 static int tolua__Vector3_new00(lua_State* tolua_S)
2540 {
2541 #ifndef TOLUA_RELEASE
2542  tolua_Error tolua_err;
2543  if (
2544      !tolua_isusertable(tolua_S,1,"Vector3",0,&tolua_err) ||
2545      !tolua_isnoobj(tolua_S,2,&tolua_err)
2546  )
2547   goto tolua_lerror;
2548  else
2549 #endif
2550  {
2551   {
2552    Vector3* tolua_ret = (Vector3*)  Mtolua_new((Vector3)());
2553     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector3");
2554   }
2555  }
2556  return 1;
2557 #ifndef TOLUA_RELEASE
2558  tolua_lerror:
2559  tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err);
2560  return 0;
2561 #endif
2562 }
2563 #endif //#ifndef TOLUA_DISABLE
2564
2565 /* method: new_local of class  Vector3 */
2566 #ifndef TOLUA_DISABLE_tolua__Vector3_new00_local
2567 static int tolua__Vector3_new00_local(lua_State* tolua_S)
2568 {
2569 #ifndef TOLUA_RELEASE
2570  tolua_Error tolua_err;
2571  if (
2572      !tolua_isusertable(tolua_S,1,"Vector3",0,&tolua_err) ||
2573      !tolua_isnoobj(tolua_S,2,&tolua_err)
2574  )
2575   goto tolua_lerror;
2576  else
2577 #endif
2578  {
2579   {
2580    Vector3* tolua_ret = (Vector3*)  Mtolua_new((Vector3)());
2581     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector3");
2582     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2583   }
2584  }
2585  return 1;
2586 #ifndef TOLUA_RELEASE
2587  tolua_lerror:
2588  tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err);
2589  return 0;
2590 #endif
2591 }
2592 #endif //#ifndef TOLUA_DISABLE
2593
2594 /* method: new of class  Vector3 */
2595 #ifndef TOLUA_DISABLE_tolua__Vector3_new01
2596 static int tolua__Vector3_new01(lua_State* tolua_S)
2597 {
2598  tolua_Error tolua_err;
2599  if (
2600      !tolua_isusertable(tolua_S,1,"Vector3",0,&tolua_err) ||
2601      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
2602      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
2603      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
2604      !tolua_isnoobj(tolua_S,5,&tolua_err)
2605  )
2606   goto tolua_lerror;
2607  else
2608  {
2609   float _x = ((float)  tolua_tonumber(tolua_S,2,0));
2610   float _y = ((float)  tolua_tonumber(tolua_S,3,0));
2611   float _z = ((float)  tolua_tonumber(tolua_S,4,0));
2612   {
2613    Vector3* tolua_ret = (Vector3*)  Mtolua_new((Vector3)(_x,_y,_z));
2614     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector3");
2615   }
2616  }
2617  return 1;
2618 tolua_lerror:
2619  return tolua__Vector3_new00(tolua_S);
2620 }
2621 #endif //#ifndef TOLUA_DISABLE
2622
2623 /* method: new_local of class  Vector3 */
2624 #ifndef TOLUA_DISABLE_tolua__Vector3_new01_local
2625 static int tolua__Vector3_new01_local(lua_State* tolua_S)
2626 {
2627  tolua_Error tolua_err;
2628  if (
2629      !tolua_isusertable(tolua_S,1,"Vector3",0,&tolua_err) ||
2630      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
2631      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
2632      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
2633      !tolua_isnoobj(tolua_S,5,&tolua_err)
2634  )
2635   goto tolua_lerror;
2636  else
2637  {
2638   float _x = ((float)  tolua_tonumber(tolua_S,2,0));
2639   float _y = ((float)  tolua_tonumber(tolua_S,3,0));
2640   float _z = ((float)  tolua_tonumber(tolua_S,4,0));
2641   {
2642    Vector3* tolua_ret = (Vector3*)  Mtolua_new((Vector3)(_x,_y,_z));
2643     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector3");
2644     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2645   }
2646  }
2647  return 1;
2648 tolua_lerror:
2649  return tolua__Vector3_new00_local(tolua_S);
2650 }
2651 #endif //#ifndef TOLUA_DISABLE
2652
2653 /* method: new of class  Vector3 */
2654 #ifndef TOLUA_DISABLE_tolua__Vector3_new02
2655 static int tolua__Vector3_new02(lua_State* tolua_S)
2656 {
2657  tolua_Error tolua_err;
2658  if (
2659      !tolua_isusertable(tolua_S,1,"Vector3",0,&tolua_err) ||
2660      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
2661      !tolua_isnoobj(tolua_S,3,&tolua_err)
2662  )
2663   goto tolua_lerror;
2664  else
2665  {
2666   const Vector3* rhs = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
2667   {
2668    Vector3* tolua_ret = (Vector3*)  Mtolua_new((Vector3)(*rhs));
2669     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector3");
2670   }
2671  }
2672  return 1;
2673 tolua_lerror:
2674  return tolua__Vector3_new01(tolua_S);
2675 }
2676 #endif //#ifndef TOLUA_DISABLE
2677
2678 /* method: new_local of class  Vector3 */
2679 #ifndef TOLUA_DISABLE_tolua__Vector3_new02_local
2680 static int tolua__Vector3_new02_local(lua_State* tolua_S)
2681 {
2682  tolua_Error tolua_err;
2683  if (
2684      !tolua_isusertable(tolua_S,1,"Vector3",0,&tolua_err) ||
2685      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
2686      !tolua_isnoobj(tolua_S,3,&tolua_err)
2687  )
2688   goto tolua_lerror;
2689  else
2690  {
2691   const Vector3* rhs = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
2692   {
2693    Vector3* tolua_ret = (Vector3*)  Mtolua_new((Vector3)(*rhs));
2694     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector3");
2695     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2696   }
2697  }
2698  return 1;
2699 tolua_lerror:
2700  return tolua__Vector3_new01_local(tolua_S);
2701 }
2702 #endif //#ifndef TOLUA_DISABLE
2703
2704 /* method: delete of class  Vector3 */
2705 #ifndef TOLUA_DISABLE_tolua__Vector3_delete00
2706 static int tolua__Vector3_delete00(lua_State* tolua_S)
2707 {
2708 #ifndef TOLUA_RELEASE
2709  tolua_Error tolua_err;
2710  if (
2711      !tolua_isusertype(tolua_S,1,"Vector3",0,&tolua_err) ||
2712      !tolua_isnoobj(tolua_S,2,&tolua_err)
2713  )
2714   goto tolua_lerror;
2715  else
2716 #endif
2717  {
2718   Vector3* self = (Vector3*)  tolua_tousertype(tolua_S,1,0);
2719 #ifndef TOLUA_RELEASE
2720   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'delete'", NULL);
2721 #endif
2722   Mtolua_delete(self);
2723  }
2724  return 0;
2725 #ifndef TOLUA_RELEASE
2726  tolua_lerror:
2727  tolua_error(tolua_S,"#ferror in function 'delete'.",&tolua_err);
2728  return 0;
2729 #endif
2730 }
2731 #endif //#ifndef TOLUA_DISABLE
2732
2733 /* method: operator- of class  Vector3 */
2734 #ifndef TOLUA_DISABLE_tolua__Vector3__sub00
2735 static int tolua__Vector3__sub00(lua_State* tolua_S)
2736 {
2737 #ifndef TOLUA_RELEASE
2738  tolua_Error tolua_err;
2739  if (
2740      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
2741      !tolua_isnoobj(tolua_S,2,&tolua_err)
2742  )
2743   goto tolua_lerror;
2744  else
2745 #endif
2746  {
2747   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
2748 #ifndef TOLUA_RELEASE
2749   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator-'", NULL);
2750 #endif
2751   {
2752    Vector3 tolua_ret = (Vector3)  self->operator-();
2753    {
2754 #ifdef __cplusplus
2755     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
2756      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2757     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2758 #else
2759     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
2760      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2761     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2762 #endif
2763    }
2764   }
2765  }
2766  return 1;
2767 #ifndef TOLUA_RELEASE
2768  tolua_lerror:
2769  tolua_error(tolua_S,"#ferror in function '.sub'.",&tolua_err);
2770  return 0;
2771 #endif
2772 }
2773 #endif //#ifndef TOLUA_DISABLE
2774
2775 /* method: operator+ of class  Vector3 */
2776 #ifndef TOLUA_DISABLE_tolua__Vector3__add00
2777 static int tolua__Vector3__add00(lua_State* tolua_S)
2778 {
2779 #ifndef TOLUA_RELEASE
2780  tolua_Error tolua_err;
2781  if (
2782      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
2783      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
2784      !tolua_isnoobj(tolua_S,3,&tolua_err)
2785  )
2786   goto tolua_lerror;
2787  else
2788 #endif
2789  {
2790   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
2791   const Vector3* aRhv = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
2792 #ifndef TOLUA_RELEASE
2793   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator+'", NULL);
2794 #endif
2795   {
2796    Vector3 tolua_ret = (Vector3)  self->operator+(*aRhv);
2797    {
2798 #ifdef __cplusplus
2799     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
2800      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2801     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2802 #else
2803     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
2804      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2805     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2806 #endif
2807    }
2808   }
2809  }
2810  return 1;
2811 #ifndef TOLUA_RELEASE
2812  tolua_lerror:
2813  tolua_error(tolua_S,"#ferror in function '.add'.",&tolua_err);
2814  return 0;
2815 #endif
2816 }
2817 #endif //#ifndef TOLUA_DISABLE
2818
2819 /* method: operator+ of class  Vector3 */
2820 #ifndef TOLUA_DISABLE_tolua__Vector3__add01
2821 static int tolua__Vector3__add01(lua_State* tolua_S)
2822 {
2823  tolua_Error tolua_err;
2824  if (
2825      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
2826      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
2827      !tolua_isnoobj(tolua_S,3,&tolua_err)
2828  )
2829   goto tolua_lerror;
2830  else
2831  {
2832   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
2833   const float aRhv = ((const float)  tolua_tonumber(tolua_S,2,0));
2834 #ifndef TOLUA_RELEASE
2835   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator+'", NULL);
2836 #endif
2837   {
2838    Vector3 tolua_ret = (Vector3)  self->operator+(aRhv);
2839    {
2840 #ifdef __cplusplus
2841     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
2842      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2843     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2844 #else
2845     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
2846      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2847     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2848 #endif
2849    }
2850   }
2851  }
2852  return 1;
2853 tolua_lerror:
2854         if (
2855                 !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err) ||
2856                 !tolua_isnumber(tolua_S,1,0,&tolua_err) ||
2857                 !tolua_isnoobj(tolua_S,3,&tolua_err)
2858            )
2859         goto tolua_lerror1;
2860         else
2861         {
2862                 const Vector3* self = (const Vector3*) tolua_tousertype(tolua_S,2,0);
2863                 const float aRhv = ((const float)  tolua_tonumber(tolua_S,1,0));
2864                 #ifndef TOLUA_RELEASE
2865                         if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator+'", NULL);
2866                 #endif
2867                 {
2868                         Vector3 tolua_ret = (Vector3)  self->operator+(aRhv);
2869                         {
2870                                 #ifdef __cplusplus
2871                                         void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
2872                                         tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2873                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2874                                 #else
2875                                         void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
2876                                         tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2877                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2878                                 #endif
2879                         }
2880                 }
2881         }
2882         return 1;
2883         tolua_lerror1:
2884  return tolua__Vector3__add00(tolua_S);
2885 }
2886 #endif //#ifndef TOLUA_DISABLE
2887
2888 /* method: operator- of class  Vector3 */
2889 #ifndef TOLUA_DISABLE_tolua__Vector3__sub01
2890 static int tolua__Vector3__sub01(lua_State* tolua_S)
2891 {
2892  tolua_Error tolua_err;
2893  if (
2894      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
2895      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
2896      !tolua_isnoobj(tolua_S,3,&tolua_err)
2897  )
2898   goto tolua_lerror;
2899  else
2900  {
2901   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
2902   const Vector3* aRhv = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
2903 #ifndef TOLUA_RELEASE
2904   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator-'", NULL);
2905 #endif
2906   {
2907    Vector3 tolua_ret = (Vector3)  self->operator-(*aRhv);
2908    {
2909 #ifdef __cplusplus
2910     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
2911      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2912     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2913 #else
2914     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
2915      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2916     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2917 #endif
2918    }
2919   }
2920  }
2921  return 1;
2922 tolua_lerror:
2923  return tolua__Vector3__sub00(tolua_S);
2924 }
2925 #endif //#ifndef TOLUA_DISABLE
2926
2927 /* method: operator- of class  Vector3 */
2928 #ifndef TOLUA_DISABLE_tolua__Vector3__sub02
2929 static int tolua__Vector3__sub02(lua_State* tolua_S)
2930 {
2931  tolua_Error tolua_err;
2932  if (
2933      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
2934      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
2935      !tolua_isnoobj(tolua_S,3,&tolua_err)
2936  )
2937   goto tolua_lerror;
2938  else
2939  {
2940   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
2941   const float aRhv = ((const float)  tolua_tonumber(tolua_S,2,0));
2942 #ifndef TOLUA_RELEASE
2943   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator-'", NULL);
2944 #endif
2945   {
2946    Vector3 tolua_ret = (Vector3)  self->operator-(aRhv);
2947    {
2948 #ifdef __cplusplus
2949     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
2950      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2951     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2952 #else
2953     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
2954      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2955     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2956 #endif
2957    }
2958   }
2959  }
2960  return 1;
2961 tolua_lerror:
2962  return tolua__Vector3__sub01(tolua_S);
2963 }
2964 #endif //#ifndef TOLUA_DISABLE
2965
2966 /* method: operator* of class  Vector3 */
2967 #ifndef TOLUA_DISABLE_tolua__Vector3__mul00
2968 static int tolua__Vector3__mul00(lua_State* tolua_S)
2969 {
2970 #ifndef TOLUA_RELEASE
2971  tolua_Error tolua_err;
2972  if (
2973      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
2974      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
2975      !tolua_isnoobj(tolua_S,3,&tolua_err)
2976  )
2977   goto tolua_lerror;
2978  else
2979 #endif
2980  {
2981   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
2982   const Vector3* aRhv = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
2983 #ifndef TOLUA_RELEASE
2984   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator*'", NULL);
2985 #endif
2986   {
2987    Vector3 tolua_ret = (Vector3)  self->operator*(*aRhv);
2988    {
2989 #ifdef __cplusplus
2990     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
2991      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2992     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2993 #else
2994     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
2995      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
2996     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
2997 #endif
2998    }
2999   }
3000  }
3001  return 1;
3002 #ifndef TOLUA_RELEASE
3003  tolua_lerror:
3004  tolua_error(tolua_S,"#ferror in function '.mul'.",&tolua_err);
3005  return 0;
3006 #endif
3007 }
3008 #endif //#ifndef TOLUA_DISABLE
3009
3010 /* method: operator* of class  Vector3 */
3011 #ifndef TOLUA_DISABLE_tolua__Vector3__mul01
3012 static int tolua__Vector3__mul01(lua_State* tolua_S)
3013 {
3014  tolua_Error tolua_err;
3015  if (
3016      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
3017      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
3018      !tolua_isnoobj(tolua_S,3,&tolua_err)
3019  )
3020   goto tolua_lerror;
3021  else
3022  {
3023   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
3024   const float aRhv = ((const float)  tolua_tonumber(tolua_S,2,0));
3025 #ifndef TOLUA_RELEASE
3026   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator*'", NULL);
3027 #endif
3028   {
3029    Vector3 tolua_ret = (Vector3)  self->operator*(aRhv);
3030    {
3031 #ifdef __cplusplus
3032     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
3033      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3034     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3035 #else
3036     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
3037      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3038     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3039 #endif
3040    }
3041   }
3042  }
3043  return 1;
3044 tolua_lerror:
3045         if (
3046                 !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err) ||
3047                 !tolua_isnumber(tolua_S,1,0,&tolua_err) ||
3048                 !tolua_isnoobj(tolua_S,3,&tolua_err)
3049            )
3050         goto tolua_lerror1;
3051         else
3052         {
3053                 const Vector3* self = (const Vector3*) tolua_tousertype(tolua_S,2,0);
3054                 const float aRhv = ((const float)  tolua_tonumber(tolua_S,1,0));
3055                 #ifndef TOLUA_RELEASE
3056                         if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator*'", NULL);
3057                 #endif
3058                 {
3059                         Vector3 tolua_ret = (Vector3)  self->operator*(aRhv);
3060                         {
3061                                 #ifdef __cplusplus
3062                                         void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
3063                                         tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3064                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3065                                 #else
3066                                         void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
3067                                         tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3068                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3069                                 #endif
3070                         }
3071                 }
3072         }
3073         return 1;
3074         tolua_lerror1:
3075  return tolua__Vector3__mul00(tolua_S);
3076 }
3077 #endif //#ifndef TOLUA_DISABLE
3078
3079 /* method: operator/ of class  Vector3 */
3080 #ifndef TOLUA_DISABLE_tolua__Vector3__div00
3081 static int tolua__Vector3__div00(lua_State* tolua_S)
3082 {
3083 #ifndef TOLUA_RELEASE
3084  tolua_Error tolua_err;
3085  if (
3086      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
3087      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
3088      !tolua_isnoobj(tolua_S,3,&tolua_err)
3089  )
3090   goto tolua_lerror;
3091  else
3092 #endif
3093  {
3094   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
3095   const Vector3* aRhv = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
3096 #ifndef TOLUA_RELEASE
3097   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator/'", NULL);
3098 #endif
3099   {
3100    Vector3 tolua_ret = (Vector3)  self->operator/(*aRhv);
3101    {
3102 #ifdef __cplusplus
3103     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
3104      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3105     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3106 #else
3107     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
3108      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3109     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3110 #endif
3111    }
3112   }
3113  }
3114  return 1;
3115 #ifndef TOLUA_RELEASE
3116  tolua_lerror:
3117  tolua_error(tolua_S,"#ferror in function '.div'.",&tolua_err);
3118  return 0;
3119 #endif
3120 }
3121 #endif //#ifndef TOLUA_DISABLE
3122
3123 /* method: operator/ of class  Vector3 */
3124 #ifndef TOLUA_DISABLE_tolua__Vector3__div01
3125 static int tolua__Vector3__div01(lua_State* tolua_S)
3126 {
3127  tolua_Error tolua_err;
3128  if (
3129      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
3130      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
3131      !tolua_isnoobj(tolua_S,3,&tolua_err)
3132  )
3133   goto tolua_lerror;
3134  else
3135  {
3136   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
3137   const float aRhv = ((const float)  tolua_tonumber(tolua_S,2,0));
3138 #ifndef TOLUA_RELEASE
3139   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator/'", NULL);
3140 #endif
3141   {
3142    Vector3 tolua_ret = (Vector3)  self->operator/(aRhv);
3143    {
3144 #ifdef __cplusplus
3145     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
3146      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3147     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3148 #else
3149     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
3150      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3151     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3152 #endif
3153    }
3154   }
3155  }
3156  return 1;
3157 tolua_lerror:
3158  return tolua__Vector3__div00(tolua_S);
3159 }
3160 #endif //#ifndef TOLUA_DISABLE
3161
3162 /* method: operator== of class  Vector3 */
3163 #ifndef TOLUA_DISABLE_tolua__Vector3__eq00
3164 static int tolua__Vector3__eq00(lua_State* tolua_S)
3165 {
3166 #ifndef TOLUA_RELEASE
3167  tolua_Error tolua_err;
3168  if (
3169      !tolua_isusertype(tolua_S,1,"const Vector3",0,&tolua_err) ||
3170      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
3171      !tolua_isnoobj(tolua_S,3,&tolua_err)
3172  )
3173   goto tolua_lerror;
3174  else
3175 #endif
3176  {
3177   const Vector3* self = (const Vector3*)  tolua_tousertype(tolua_S,1,0);
3178   const Vector3* aRhv = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
3179 #ifndef TOLUA_RELEASE
3180   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator=='", NULL);
3181 #endif
3182   {
3183    bool tolua_ret = (bool)  self->operator==(*aRhv);
3184    tolua_pushboolean(tolua_S,(bool)tolua_ret);
3185   }
3186  }
3187  return 1;
3188 #ifndef TOLUA_RELEASE
3189  tolua_lerror:
3190  tolua_error(tolua_S,"#ferror in function '.eq'.",&tolua_err);
3191  return 0;
3192 #endif
3193 }
3194 #endif //#ifndef TOLUA_DISABLE
3195
3196 /* method: GetCrossVector3 of class  Vector3 */
3197 #ifndef TOLUA_DISABLE_tolua__Vector3_GetCrossVector300
3198 static int tolua__Vector3_GetCrossVector300(lua_State* tolua_S)
3199 {
3200 #ifndef TOLUA_RELEASE
3201  tolua_Error tolua_err;
3202  if (
3203      !tolua_isusertype(tolua_S,1,"Vector3",0,&tolua_err) ||
3204      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector3",0,&tolua_err)) ||
3205      !tolua_isnoobj(tolua_S,3,&tolua_err)
3206  )
3207   goto tolua_lerror;
3208  else
3209 #endif
3210  {
3211   Vector3* self = (Vector3*)  tolua_tousertype(tolua_S,1,0);
3212   const Vector3* aOther = ((const Vector3*)  tolua_tousertype(tolua_S,2,0));
3213 #ifndef TOLUA_RELEASE
3214   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetCrossVector3'", NULL);
3215 #endif
3216   {
3217    Vector3& tolua_ret = (Vector3&)  self->GetCrossVector3(*aOther);
3218    {
3219 #ifdef __cplusplus
3220     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
3221      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3222     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3223 #else
3224     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
3225      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3226     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3227 #endif
3228    }
3229   }
3230  }
3231  return 1;
3232 #ifndef TOLUA_RELEASE
3233  tolua_lerror:
3234  tolua_error(tolua_S,"#ferror in function 'GetCrossVector3'.",&tolua_err);
3235  return 0;
3236 #endif
3237 }
3238 #endif //#ifndef TOLUA_DISABLE
3239
3240 /* method: GetNormalizedVector3 of class  Vector3 */
3241 #ifndef TOLUA_DISABLE_tolua__Vector3_GetNormalizedVector300
3242 static int tolua__Vector3_GetNormalizedVector300(lua_State* tolua_S)
3243 {
3244 #ifndef TOLUA_RELEASE
3245  tolua_Error tolua_err;
3246  if (
3247      !tolua_isusertype(tolua_S,1,"Vector3",0,&tolua_err) ||
3248      !tolua_isnoobj(tolua_S,2,&tolua_err)
3249  )
3250   goto tolua_lerror;
3251  else
3252 #endif
3253  {
3254   Vector3* self = (Vector3*)  tolua_tousertype(tolua_S,1,0);
3255 #ifndef TOLUA_RELEASE
3256   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetNormalizedVector3'", NULL);
3257 #endif
3258   {
3259    Vector3& tolua_ret = (Vector3&)  self->GetNormalizedVector3();
3260    {
3261 #ifdef __cplusplus
3262     void* tolua_obj = Mtolua_new((Vector3)(tolua_ret));
3263      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3264     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3265 #else
3266     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector3));
3267      tolua_pushusertype(tolua_S,tolua_obj,"Vector3");
3268     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3269 #endif
3270    }
3271   }
3272  }
3273  return 1;
3274 #ifndef TOLUA_RELEASE
3275  tolua_lerror:
3276  tolua_error(tolua_S,"#ferror in function 'GetNormalizedVector3'.",&tolua_err);
3277  return 0;
3278 #endif
3279 }
3280 #endif //#ifndef TOLUA_DISABLE
3281
3282 /* get function: x of class  Vector2 */
3283 #ifndef TOLUA_DISABLE_tolua_get_Vector2_x
3284 static int tolua_get_Vector2_x(lua_State* tolua_S)
3285 {
3286   Vector2* self = (Vector2*)  tolua_tousertype(tolua_S,1,0);
3287 #ifndef TOLUA_RELEASE
3288   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'x'",NULL);
3289 #endif
3290   tolua_pushnumber(tolua_S,(lua_Number)self->x);
3291  return 1;
3292 }
3293 #endif //#ifndef TOLUA_DISABLE
3294
3295 /* set function: x of class  Vector2 */
3296 #ifndef TOLUA_DISABLE_tolua_set_Vector2_x
3297 static int tolua_set_Vector2_x(lua_State* tolua_S)
3298 {
3299   Vector2* self = (Vector2*)  tolua_tousertype(tolua_S,1,0);
3300 #ifndef TOLUA_RELEASE
3301   tolua_Error tolua_err;
3302   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'x'",NULL);
3303   if (!tolua_isnumber(tolua_S,2,0,&tolua_err))
3304    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
3305 #endif
3306   self->x = ((float)  tolua_tonumber(tolua_S,2,0))
3307 ;
3308  return 0;
3309 }
3310 #endif //#ifndef TOLUA_DISABLE
3311
3312 /* get function: y of class  Vector2 */
3313 #ifndef TOLUA_DISABLE_tolua_get_Vector2_y
3314 static int tolua_get_Vector2_y(lua_State* tolua_S)
3315 {
3316   Vector2* self = (Vector2*)  tolua_tousertype(tolua_S,1,0);
3317 #ifndef TOLUA_RELEASE
3318   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'y'",NULL);
3319 #endif
3320   tolua_pushnumber(tolua_S,(lua_Number)self->y);
3321  return 1;
3322 }
3323 #endif //#ifndef TOLUA_DISABLE
3324
3325 /* set function: y of class  Vector2 */
3326 #ifndef TOLUA_DISABLE_tolua_set_Vector2_y
3327 static int tolua_set_Vector2_y(lua_State* tolua_S)
3328 {
3329   Vector2* self = (Vector2*)  tolua_tousertype(tolua_S,1,0);
3330 #ifndef TOLUA_RELEASE
3331   tolua_Error tolua_err;
3332   if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'y'",NULL);
3333   if (!tolua_isnumber(tolua_S,2,0,&tolua_err))
3334    tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err);
3335 #endif
3336   self->y = ((float)  tolua_tonumber(tolua_S,2,0))
3337 ;
3338  return 0;
3339 }
3340 #endif //#ifndef TOLUA_DISABLE
3341
3342 /* method: new of class  Vector2 */
3343 #ifndef TOLUA_DISABLE_tolua__Vector2_new00
3344 static int tolua__Vector2_new00(lua_State* tolua_S)
3345 {
3346 #ifndef TOLUA_RELEASE
3347  tolua_Error tolua_err;
3348  if (
3349      !tolua_isusertable(tolua_S,1,"Vector2",0,&tolua_err) ||
3350      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector2",0,&tolua_err)) ||
3351      !tolua_isnoobj(tolua_S,3,&tolua_err)
3352  )
3353   goto tolua_lerror;
3354  else
3355 #endif
3356  {
3357   const Vector2* rhs = ((const Vector2*)  tolua_tousertype(tolua_S,2,0));
3358   {
3359    Vector2* tolua_ret = (Vector2*)  Mtolua_new((Vector2)(*rhs));
3360     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector2");
3361   }
3362  }
3363  return 1;
3364 #ifndef TOLUA_RELEASE
3365  tolua_lerror:
3366  tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err);
3367  return 0;
3368 #endif
3369 }
3370 #endif //#ifndef TOLUA_DISABLE
3371
3372 /* method: new_local of class  Vector2 */
3373 #ifndef TOLUA_DISABLE_tolua__Vector2_new00_local
3374 static int tolua__Vector2_new00_local(lua_State* tolua_S)
3375 {
3376 #ifndef TOLUA_RELEASE
3377  tolua_Error tolua_err;
3378  if (
3379      !tolua_isusertable(tolua_S,1,"Vector2",0,&tolua_err) ||
3380      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector2",0,&tolua_err)) ||
3381      !tolua_isnoobj(tolua_S,3,&tolua_err)
3382  )
3383   goto tolua_lerror;
3384  else
3385 #endif
3386  {
3387   const Vector2* rhs = ((const Vector2*)  tolua_tousertype(tolua_S,2,0));
3388   {
3389    Vector2* tolua_ret = (Vector2*)  Mtolua_new((Vector2)(*rhs));
3390     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector2");
3391     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3392   }
3393  }
3394  return 1;
3395 #ifndef TOLUA_RELEASE
3396  tolua_lerror:
3397  tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err);
3398  return 0;
3399 #endif
3400 }
3401 #endif //#ifndef TOLUA_DISABLE
3402
3403 /* method: new of class  Vector2 */
3404 #ifndef TOLUA_DISABLE_tolua__Vector2_new01
3405 static int tolua__Vector2_new01(lua_State* tolua_S)
3406 {
3407  tolua_Error tolua_err;
3408  if (
3409      !tolua_isusertable(tolua_S,1,"Vector2",0,&tolua_err) ||
3410      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
3411      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
3412      !tolua_isnoobj(tolua_S,4,&tolua_err)
3413  )
3414   goto tolua_lerror;
3415  else
3416  {
3417   float _x = ((float)  tolua_tonumber(tolua_S,2,0));
3418   float _y = ((float)  tolua_tonumber(tolua_S,3,0));
3419   {
3420    Vector2* tolua_ret = (Vector2*)  Mtolua_new((Vector2)(_x,_y));
3421     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector2");
3422   }
3423  }
3424  return 1;
3425 tolua_lerror:
3426  return tolua__Vector2_new00(tolua_S);
3427 }
3428 #endif //#ifndef TOLUA_DISABLE
3429
3430 /* method: new_local of class  Vector2 */
3431 #ifndef TOLUA_DISABLE_tolua__Vector2_new01_local
3432 static int tolua__Vector2_new01_local(lua_State* tolua_S)
3433 {
3434  tolua_Error tolua_err;
3435  if (
3436      !tolua_isusertable(tolua_S,1,"Vector2",0,&tolua_err) ||
3437      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
3438      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
3439      !tolua_isnoobj(tolua_S,4,&tolua_err)
3440  )
3441   goto tolua_lerror;
3442  else
3443  {
3444   float _x = ((float)  tolua_tonumber(tolua_S,2,0));
3445   float _y = ((float)  tolua_tonumber(tolua_S,3,0));
3446   {
3447    Vector2* tolua_ret = (Vector2*)  Mtolua_new((Vector2)(_x,_y));
3448     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector2");
3449     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3450   }
3451  }
3452  return 1;
3453 tolua_lerror:
3454  return tolua__Vector2_new00_local(tolua_S);
3455 }
3456 #endif //#ifndef TOLUA_DISABLE
3457
3458 /* method: new of class  Vector2 */
3459 #ifndef TOLUA_DISABLE_tolua__Vector2_new02
3460 static int tolua__Vector2_new02(lua_State* tolua_S)
3461 {
3462  tolua_Error tolua_err;
3463  if (
3464      !tolua_isusertable(tolua_S,1,"Vector2",0,&tolua_err) ||
3465      !tolua_isnoobj(tolua_S,2,&tolua_err)
3466  )
3467   goto tolua_lerror;
3468  else
3469  {
3470   {
3471    Vector2* tolua_ret = (Vector2*)  Mtolua_new((Vector2)());
3472     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector2");
3473   }
3474  }
3475  return 1;
3476 tolua_lerror:
3477  return tolua__Vector2_new01(tolua_S);
3478 }
3479 #endif //#ifndef TOLUA_DISABLE
3480
3481 /* method: new_local of class  Vector2 */
3482 #ifndef TOLUA_DISABLE_tolua__Vector2_new02_local
3483 static int tolua__Vector2_new02_local(lua_State* tolua_S)
3484 {
3485  tolua_Error tolua_err;
3486  if (
3487      !tolua_isusertable(tolua_S,1,"Vector2",0,&tolua_err) ||
3488      !tolua_isnoobj(tolua_S,2,&tolua_err)
3489  )
3490   goto tolua_lerror;
3491  else
3492  {
3493   {
3494    Vector2* tolua_ret = (Vector2*)  Mtolua_new((Vector2)());
3495     tolua_pushusertype(tolua_S,(void*)tolua_ret,"Vector2");
3496     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3497   }
3498  }
3499  return 1;
3500 tolua_lerror:
3501  return tolua__Vector2_new01_local(tolua_S);
3502 }
3503 #endif //#ifndef TOLUA_DISABLE
3504
3505 /* method: delete of class  Vector2 */
3506 #ifndef TOLUA_DISABLE_tolua__Vector2_delete00
3507 static int tolua__Vector2_delete00(lua_State* tolua_S)
3508 {
3509 #ifndef TOLUA_RELEASE
3510  tolua_Error tolua_err;
3511  if (
3512      !tolua_isusertype(tolua_S,1,"Vector2",0,&tolua_err) ||
3513      !tolua_isnoobj(tolua_S,2,&tolua_err)
3514  )
3515   goto tolua_lerror;
3516  else
3517 #endif
3518  {
3519   Vector2* self = (Vector2*)  tolua_tousertype(tolua_S,1,0);
3520 #ifndef TOLUA_RELEASE
3521   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'delete'", NULL);
3522 #endif
3523   Mtolua_delete(self);
3524  }
3525  return 0;
3526 #ifndef TOLUA_RELEASE
3527  tolua_lerror:
3528  tolua_error(tolua_S,"#ferror in function 'delete'.",&tolua_err);
3529  return 0;
3530 #endif
3531 }
3532 #endif //#ifndef TOLUA_DISABLE
3533
3534 /* method: operator- of class  Vector2 */
3535 #ifndef TOLUA_DISABLE_tolua__Vector2__sub00
3536 static int tolua__Vector2__sub00(lua_State* tolua_S)
3537 {
3538 #ifndef TOLUA_RELEASE
3539  tolua_Error tolua_err;
3540  if (
3541      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3542      !tolua_isnoobj(tolua_S,2,&tolua_err)
3543  )
3544   goto tolua_lerror;
3545  else
3546 #endif
3547  {
3548   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3549 #ifndef TOLUA_RELEASE
3550   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator-'", NULL);
3551 #endif
3552   {
3553    Vector2 tolua_ret = (Vector2)  self->operator-();
3554    {
3555 #ifdef __cplusplus
3556     void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3557      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3558     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3559 #else
3560     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3561      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3562     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3563 #endif
3564    }
3565   }
3566  }
3567  return 1;
3568 #ifndef TOLUA_RELEASE
3569  tolua_lerror:
3570  tolua_error(tolua_S,"#ferror in function '.sub'.",&tolua_err);
3571  return 0;
3572 #endif
3573 }
3574 #endif //#ifndef TOLUA_DISABLE
3575
3576 /* method: operator+ of class  Vector2 */
3577 #ifndef TOLUA_DISABLE_tolua__Vector2__add00
3578 static int tolua__Vector2__add00(lua_State* tolua_S)
3579 {
3580 #ifndef TOLUA_RELEASE
3581  tolua_Error tolua_err;
3582  if (
3583      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3584      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector2",0,&tolua_err)) ||
3585      !tolua_isnoobj(tolua_S,3,&tolua_err)
3586  )
3587   goto tolua_lerror;
3588  else
3589 #endif
3590  {
3591   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3592   const Vector2* aRhv = ((const Vector2*)  tolua_tousertype(tolua_S,2,0));
3593 #ifndef TOLUA_RELEASE
3594   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator+'", NULL);
3595 #endif
3596   {
3597    Vector2 tolua_ret = (Vector2)  self->operator+(*aRhv);
3598    {
3599 #ifdef __cplusplus
3600     void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3601      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3602     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3603 #else
3604     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3605      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3606     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3607 #endif
3608    }
3609   }
3610  }
3611  return 1;
3612 #ifndef TOLUA_RELEASE
3613  tolua_lerror:
3614  tolua_error(tolua_S,"#ferror in function '.add'.",&tolua_err);
3615  return 0;
3616 #endif
3617 }
3618 #endif //#ifndef TOLUA_DISABLE
3619
3620 /* method: operator+ of class  Vector2 */
3621 #ifndef TOLUA_DISABLE_tolua__Vector2__add01
3622 static int tolua__Vector2__add01(lua_State* tolua_S)
3623 {
3624  tolua_Error tolua_err;
3625  if (
3626      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3627      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
3628      !tolua_isnoobj(tolua_S,3,&tolua_err)
3629  )
3630   goto tolua_lerror;
3631  else
3632  {
3633   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3634   const float aRhv = ((const float)  tolua_tonumber(tolua_S,2,0));
3635 #ifndef TOLUA_RELEASE
3636   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator+'", NULL);
3637 #endif
3638   {
3639    Vector2 tolua_ret = (Vector2)  self->operator+(aRhv);
3640    {
3641 #ifdef __cplusplus
3642     void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3643      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3644     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3645 #else
3646     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3647      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3648     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3649 #endif
3650    }
3651   }
3652  }
3653  return 1;
3654 tolua_lerror:
3655         if (
3656                 !tolua_isusertype(tolua_S,2,"const Vector2",0,&tolua_err) ||
3657                 !tolua_isnumber(tolua_S,1,0,&tolua_err) ||
3658                 !tolua_isnoobj(tolua_S,3,&tolua_err)
3659            )
3660         goto tolua_lerror1;
3661         else
3662         {
3663                 const Vector2* self = (const Vector2*) tolua_tousertype(tolua_S,2,0);
3664                 const float aRhv = ((const float)  tolua_tonumber(tolua_S,1,0));
3665                 #ifndef TOLUA_RELEASE
3666                         if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator+'", NULL);
3667                 #endif
3668                 {
3669                         Vector2 tolua_ret = (Vector2)  self->operator+(aRhv);
3670                         {
3671                                 #ifdef __cplusplus
3672                                         void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3673                                         tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3674                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3675                                 #else
3676                                         void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3677                                         tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3678                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3679                                 #endif
3680                         }
3681                 }
3682         }
3683         return 1;
3684         tolua_lerror1:
3685  return tolua__Vector2__add00(tolua_S);
3686 }
3687 #endif //#ifndef TOLUA_DISABLE
3688
3689 /* method: operator- of class  Vector2 */
3690 #ifndef TOLUA_DISABLE_tolua__Vector2__sub01
3691 static int tolua__Vector2__sub01(lua_State* tolua_S)
3692 {
3693  tolua_Error tolua_err;
3694  if (
3695      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3696      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector2",0,&tolua_err)) ||
3697      !tolua_isnoobj(tolua_S,3,&tolua_err)
3698  )
3699   goto tolua_lerror;
3700  else
3701  {
3702   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3703   const Vector2* aRhv = ((const Vector2*)  tolua_tousertype(tolua_S,2,0));
3704 #ifndef TOLUA_RELEASE
3705   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator-'", NULL);
3706 #endif
3707   {
3708    Vector2 tolua_ret = (Vector2)  self->operator-(*aRhv);
3709    {
3710 #ifdef __cplusplus
3711     void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3712      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3713     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3714 #else
3715     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3716      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3717     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3718 #endif
3719    }
3720   }
3721  }
3722  return 1;
3723 tolua_lerror:
3724  return tolua__Vector2__sub00(tolua_S);
3725 }
3726 #endif //#ifndef TOLUA_DISABLE
3727
3728 /* method: operator- of class  Vector2 */
3729 #ifndef TOLUA_DISABLE_tolua__Vector2__sub02
3730 static int tolua__Vector2__sub02(lua_State* tolua_S)
3731 {
3732  tolua_Error tolua_err;
3733  if (
3734      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3735      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
3736      !tolua_isnoobj(tolua_S,3,&tolua_err)
3737  )
3738   goto tolua_lerror;
3739  else
3740  {
3741   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3742   const float aRhv = ((const float)  tolua_tonumber(tolua_S,2,0));
3743 #ifndef TOLUA_RELEASE
3744   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator-'", NULL);
3745 #endif
3746   {
3747    Vector2 tolua_ret = (Vector2)  self->operator-(aRhv);
3748    {
3749 #ifdef __cplusplus
3750     void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3751      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3752     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3753 #else
3754     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3755      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3756     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3757 #endif
3758    }
3759   }
3760  }
3761  return 1;
3762 tolua_lerror:
3763  return tolua__Vector2__sub01(tolua_S);
3764 }
3765 #endif //#ifndef TOLUA_DISABLE
3766
3767 /* method: operator* of class  Vector2 */
3768 #ifndef TOLUA_DISABLE_tolua__Vector2__mul00
3769 static int tolua__Vector2__mul00(lua_State* tolua_S)
3770 {
3771 #ifndef TOLUA_RELEASE
3772  tolua_Error tolua_err;
3773  if (
3774      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3775      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector2",0,&tolua_err)) ||
3776      !tolua_isnoobj(tolua_S,3,&tolua_err)
3777  )
3778   goto tolua_lerror;
3779  else
3780 #endif
3781  {
3782   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3783   const Vector2* aRhv = ((const Vector2*)  tolua_tousertype(tolua_S,2,0));
3784 #ifndef TOLUA_RELEASE
3785   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator*'", NULL);
3786 #endif
3787   {
3788    Vector2 tolua_ret = (Vector2)  self->operator*(*aRhv);
3789    {
3790 #ifdef __cplusplus
3791     void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3792      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3793     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3794 #else
3795     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3796      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3797     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3798 #endif
3799    }
3800   }
3801  }
3802  return 1;
3803 #ifndef TOLUA_RELEASE
3804  tolua_lerror:
3805  tolua_error(tolua_S,"#ferror in function '.mul'.",&tolua_err);
3806  return 0;
3807 #endif
3808 }
3809 #endif //#ifndef TOLUA_DISABLE
3810
3811 /* method: operator* of class  Vector2 */
3812 #ifndef TOLUA_DISABLE_tolua__Vector2__mul01
3813 static int tolua__Vector2__mul01(lua_State* tolua_S)
3814 {
3815  tolua_Error tolua_err;
3816  if (
3817      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3818      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
3819      !tolua_isnoobj(tolua_S,3,&tolua_err)
3820  )
3821   goto tolua_lerror;
3822  else
3823  {
3824   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3825   const float aRhv = ((const float)  tolua_tonumber(tolua_S,2,0));
3826 #ifndef TOLUA_RELEASE
3827   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator*'", NULL);
3828 #endif
3829   {
3830    Vector2 tolua_ret = (Vector2)  self->operator*(aRhv);
3831    {
3832 #ifdef __cplusplus
3833     void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3834      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3835     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3836 #else
3837     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3838      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3839     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3840 #endif
3841    }
3842   }
3843  }
3844  return 1;
3845 tolua_lerror:
3846         if (
3847                 !tolua_isusertype(tolua_S,2,"const Vector2",0,&tolua_err) ||
3848                 !tolua_isnumber(tolua_S,1,0,&tolua_err) ||
3849                 !tolua_isnoobj(tolua_S,3,&tolua_err)
3850            )
3851         goto tolua_lerror1;
3852         else
3853         {
3854                 const Vector2* self = (const Vector2*) tolua_tousertype(tolua_S,2,0);
3855                 const float aRhv = ((const float)  tolua_tonumber(tolua_S,1,0));
3856                 #ifndef TOLUA_RELEASE
3857                         if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator*'", NULL);
3858                 #endif
3859                 {
3860                         Vector2 tolua_ret = (Vector2)  self->operator*(aRhv);
3861                         {
3862                                 #ifdef __cplusplus
3863                                         void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3864                                         tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3865                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3866                                 #else
3867                                         void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3868                                         tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3869                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3870                                 #endif
3871                         }
3872                 }
3873         }
3874         return 1;
3875         tolua_lerror1:
3876  return tolua__Vector2__mul00(tolua_S);
3877 }
3878 #endif //#ifndef TOLUA_DISABLE
3879
3880 /* method: operator/ of class  Vector2 */
3881 #ifndef TOLUA_DISABLE_tolua__Vector2__div00
3882 static int tolua__Vector2__div00(lua_State* tolua_S)
3883 {
3884 #ifndef TOLUA_RELEASE
3885  tolua_Error tolua_err;
3886  if (
3887      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3888      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector2",0,&tolua_err)) ||
3889      !tolua_isnoobj(tolua_S,3,&tolua_err)
3890  )
3891   goto tolua_lerror;
3892  else
3893 #endif
3894  {
3895   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3896   const Vector2* aRhv = ((const Vector2*)  tolua_tousertype(tolua_S,2,0));
3897 #ifndef TOLUA_RELEASE
3898   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator/'", NULL);
3899 #endif
3900   {
3901    Vector2 tolua_ret = (Vector2)  self->operator/(*aRhv);
3902    {
3903 #ifdef __cplusplus
3904     void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3905      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3906     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3907 #else
3908     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3909      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3910     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3911 #endif
3912    }
3913   }
3914  }
3915  return 1;
3916 #ifndef TOLUA_RELEASE
3917  tolua_lerror:
3918  tolua_error(tolua_S,"#ferror in function '.div'.",&tolua_err);
3919  return 0;
3920 #endif
3921 }
3922 #endif //#ifndef TOLUA_DISABLE
3923
3924 /* method: operator/ of class  Vector2 */
3925 #ifndef TOLUA_DISABLE_tolua__Vector2__div01
3926 static int tolua__Vector2__div01(lua_State* tolua_S)
3927 {
3928  tolua_Error tolua_err;
3929  if (
3930      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3931      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
3932      !tolua_isnoobj(tolua_S,3,&tolua_err)
3933  )
3934   goto tolua_lerror;
3935  else
3936  {
3937   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3938   const float aRhv = ((const float)  tolua_tonumber(tolua_S,2,0));
3939 #ifndef TOLUA_RELEASE
3940   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator/'", NULL);
3941 #endif
3942   {
3943    Vector2 tolua_ret = (Vector2)  self->operator/(aRhv);
3944    {
3945 #ifdef __cplusplus
3946     void* tolua_obj = Mtolua_new((Vector2)(tolua_ret));
3947      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3948     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3949 #else
3950     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(Vector2));
3951      tolua_pushusertype(tolua_S,tolua_obj,"Vector2");
3952     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
3953 #endif
3954    }
3955   }
3956  }
3957  return 1;
3958 tolua_lerror:
3959  return tolua__Vector2__div00(tolua_S);
3960 }
3961 #endif //#ifndef TOLUA_DISABLE
3962
3963 /* method: operator== of class  Vector2 */
3964 #ifndef TOLUA_DISABLE_tolua__Vector2__eq00
3965 static int tolua__Vector2__eq00(lua_State* tolua_S)
3966 {
3967 #ifndef TOLUA_RELEASE
3968  tolua_Error tolua_err;
3969  if (
3970      !tolua_isusertype(tolua_S,1,"const Vector2",0,&tolua_err) ||
3971      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const Vector2",0,&tolua_err)) ||
3972      !tolua_isnoobj(tolua_S,3,&tolua_err)
3973  )
3974   goto tolua_lerror;
3975  else
3976 #endif
3977  {
3978   const Vector2* self = (const Vector2*)  tolua_tousertype(tolua_S,1,0);
3979   const Vector2* aRhv = ((const Vector2*)  tolua_tousertype(tolua_S,2,0));
3980 #ifndef TOLUA_RELEASE
3981   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator=='", NULL);
3982 #endif
3983   {
3984    bool tolua_ret = (bool)  self->operator==(*aRhv);
3985    tolua_pushboolean(tolua_S,(bool)tolua_ret);
3986   }
3987  }
3988  return 1;
3989 #ifndef TOLUA_RELEASE
3990  tolua_lerror:
3991  tolua_error(tolua_S,"#ferror in function '.eq'.",&tolua_err);
3992  return 0;
3993 #endif
3994 }
3995 #endif //#ifndef TOLUA_DISABLE
3996
3997 /* method: GetSize of class  EffectsVector<EffectsVector<long> > */
3998 #ifndef TOLUA_DISABLE_tolua__EffectsVector_EffectsVector_long____GetSize00
3999 static int tolua__EffectsVector_EffectsVector_long____GetSize00(lua_State* tolua_S)
4000 {
4001 #ifndef TOLUA_RELEASE
4002  tolua_Error tolua_err;
4003  if (
4004      !tolua_isusertype(tolua_S,1,"const EffectsVector<EffectsVector<long> >",0,&tolua_err) ||
4005      !tolua_isnoobj(tolua_S,2,&tolua_err)
4006  )
4007   goto tolua_lerror;
4008  else
4009 #endif
4010  {
4011   const EffectsVector<EffectsVector<long> >* self = (const EffectsVector<EffectsVector<long> >*)  tolua_tousertype(tolua_S,1,0);
4012 #ifndef TOLUA_RELEASE
4013   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetSize'", NULL);
4014 #endif
4015   {
4016    long tolua_ret = (long)  self->GetSize();
4017    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
4018   }
4019  }
4020  return 1;
4021 #ifndef TOLUA_RELEASE
4022  tolua_lerror:
4023  tolua_error(tolua_S,"#ferror in function 'GetSize'.",&tolua_err);
4024  return 0;
4025 #endif
4026 }
4027 #endif //#ifndef TOLUA_DISABLE
4028
4029 /* method: operator[] of class  EffectsVector<EffectsVector<long> > */
4030 #ifndef TOLUA_DISABLE_tolua__EffectsVector_EffectsVector_long_____geti00
4031 static int tolua__EffectsVector_EffectsVector_long_____geti00(lua_State* tolua_S)
4032 {
4033 #ifndef TOLUA_RELEASE
4034  tolua_Error tolua_err;
4035  if (
4036      !tolua_isusertype(tolua_S,1,"const EffectsVector<EffectsVector<long> >",0,&tolua_err) ||
4037      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4038      !tolua_isnoobj(tolua_S,3,&tolua_err)
4039  )
4040   goto tolua_lerror;
4041  else
4042 #endif
4043  {
4044   const EffectsVector<EffectsVector<long> >* self = (const EffectsVector<EffectsVector<long> >*)  tolua_tousertype(tolua_S,1,0);
4045   long index = ((long)  tolua_tonumber(tolua_S,2,0));
4046 #ifndef TOLUA_RELEASE
4047   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator[]'", NULL);
4048 #endif
4049  if (index >= self->GetSize() ||  index < 0)
4050  {
4051         return luaL_error(tolua_S, "Attempt to get out of the array range (see operator[] calling)");
4052  }
4053   {
4054    const EffectsVector<long> tolua_ret = (const EffectsVector<long>)  self->operator[](index);
4055    {
4056 #ifdef __cplusplus
4057     void* tolua_obj = Mtolua_new((EffectsVector<long>)(tolua_ret));
4058      tolua_pushusertype(tolua_S,tolua_obj,"const EffectsVector<long>");
4059     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4060 #else
4061     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(const EffectsVector<long>));
4062      tolua_pushusertype(tolua_S,tolua_obj,"const EffectsVector<long>");
4063     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4064 #endif
4065    }
4066   }
4067  }
4068  return 1;
4069 #ifndef TOLUA_RELEASE
4070  tolua_lerror:
4071  tolua_error(tolua_S,"#ferror in function '.geti'.",&tolua_err);
4072  return 0;
4073 #endif
4074 }
4075 #endif //#ifndef TOLUA_DISABLE
4076
4077 /* method: GetSize of class  EffectsVector<long> */
4078 #ifndef TOLUA_DISABLE_tolua__EffectsVector_long__GetSize00
4079 static int tolua__EffectsVector_long__GetSize00(lua_State* tolua_S)
4080 {
4081 #ifndef TOLUA_RELEASE
4082  tolua_Error tolua_err;
4083  if (
4084      !tolua_isusertype(tolua_S,1,"const EffectsVector<long>",0,&tolua_err) ||
4085      !tolua_isnoobj(tolua_S,2,&tolua_err)
4086  )
4087   goto tolua_lerror;
4088  else
4089 #endif
4090  {
4091   const EffectsVector<long>* self = (const EffectsVector<long>*)  tolua_tousertype(tolua_S,1,0);
4092 #ifndef TOLUA_RELEASE
4093   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetSize'", NULL);
4094 #endif
4095   {
4096    long tolua_ret = (long)  self->GetSize();
4097    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
4098   }
4099  }
4100  return 1;
4101 #ifndef TOLUA_RELEASE
4102  tolua_lerror:
4103  tolua_error(tolua_S,"#ferror in function 'GetSize'.",&tolua_err);
4104  return 0;
4105 #endif
4106 }
4107 #endif //#ifndef TOLUA_DISABLE
4108
4109 /* method: operator[] of class  EffectsVector<long> */
4110 #ifndef TOLUA_DISABLE_tolua__EffectsVector_long___geti00
4111 static int tolua__EffectsVector_long___geti00(lua_State* tolua_S)
4112 {
4113 #ifndef TOLUA_RELEASE
4114  tolua_Error tolua_err;
4115  if (
4116      !tolua_isusertype(tolua_S,1,"const EffectsVector<long>",0,&tolua_err) ||
4117      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4118      !tolua_isnoobj(tolua_S,3,&tolua_err)
4119  )
4120   goto tolua_lerror;
4121  else
4122 #endif
4123  {
4124   const EffectsVector<long>* self = (const EffectsVector<long>*)  tolua_tousertype(tolua_S,1,0);
4125   long index = ((long)  tolua_tonumber(tolua_S,2,0));
4126 #ifndef TOLUA_RELEASE
4127   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator[]'", NULL);
4128 #endif
4129  if (index >= self->GetSize() ||  index < 0)
4130  {
4131         return luaL_error(tolua_S, "Attempt to get out of the array range (see operator[] calling)");
4132  }
4133   {
4134    const long tolua_ret = (const long)  self->operator[](index);
4135    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
4136   }
4137  }
4138  return 1;
4139 #ifndef TOLUA_RELEASE
4140  tolua_lerror:
4141  tolua_error(tolua_S,"#ferror in function '.geti'.",&tolua_err);
4142  return 0;
4143 #endif
4144 }
4145 #endif //#ifndef TOLUA_DISABLE
4146
4147 /* method: GetSize of class  EffectsVector<float> */
4148 #ifndef TOLUA_DISABLE_tolua__EffectsVector_float__GetSize00
4149 static int tolua__EffectsVector_float__GetSize00(lua_State* tolua_S)
4150 {
4151 #ifndef TOLUA_RELEASE
4152  tolua_Error tolua_err;
4153  if (
4154      !tolua_isusertype(tolua_S,1,"const EffectsVector<float>",0,&tolua_err) ||
4155      !tolua_isnoobj(tolua_S,2,&tolua_err)
4156  )
4157   goto tolua_lerror;
4158  else
4159 #endif
4160  {
4161   const EffectsVector<float>* self = (const EffectsVector<float>*)  tolua_tousertype(tolua_S,1,0);
4162 #ifndef TOLUA_RELEASE
4163   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'GetSize'", NULL);
4164 #endif
4165   {
4166    long tolua_ret = (long)  self->GetSize();
4167    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
4168   }
4169  }
4170  return 1;
4171 #ifndef TOLUA_RELEASE
4172  tolua_lerror:
4173  tolua_error(tolua_S,"#ferror in function 'GetSize'.",&tolua_err);
4174  return 0;
4175 #endif
4176 }
4177 #endif //#ifndef TOLUA_DISABLE
4178
4179 /* method: operator[] of class  EffectsVector<float> */
4180 #ifndef TOLUA_DISABLE_tolua__EffectsVector_float___geti00
4181 static int tolua__EffectsVector_float___geti00(lua_State* tolua_S)
4182 {
4183 #ifndef TOLUA_RELEASE
4184  tolua_Error tolua_err;
4185  if (
4186      !tolua_isusertype(tolua_S,1,"const EffectsVector<float>",0,&tolua_err) ||
4187      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4188      !tolua_isnoobj(tolua_S,3,&tolua_err)
4189  )
4190   goto tolua_lerror;
4191  else
4192 #endif
4193  {
4194   const EffectsVector<float>* self = (const EffectsVector<float>*)  tolua_tousertype(tolua_S,1,0);
4195   long index = ((long)  tolua_tonumber(tolua_S,2,0));
4196 #ifndef TOLUA_RELEASE
4197   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator[]'", NULL);
4198 #endif
4199  if (index >= self->GetSize() ||  index < 0)
4200  {
4201         return luaL_error(tolua_S, "Attempt to get out of the array range (see operator[] calling)");
4202  }
4203   {
4204    const float tolua_ret = (const float)  self->operator[](index);
4205    tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
4206   }
4207  }
4208  return 1;
4209 #ifndef TOLUA_RELEASE
4210  tolua_lerror:
4211  tolua_error(tolua_S,"#ferror in function '.geti'.",&tolua_err);
4212  return 0;
4213 #endif
4214 }
4215 #endif //#ifndef TOLUA_DISABLE
4216
4217 /* method: new of class  LuaMatrix4 */
4218 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_new00
4219 static int tolua__LuaMatrix4_new00(lua_State* tolua_S)
4220 {
4221 #ifndef TOLUA_RELEASE
4222  tolua_Error tolua_err;
4223  if (
4224      !tolua_isusertable(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4225      !tolua_isnoobj(tolua_S,2,&tolua_err)
4226  )
4227   goto tolua_lerror;
4228  else
4229 #endif
4230  {
4231   {
4232    LuaMatrix4* tolua_ret = (LuaMatrix4*)  Mtolua_new((LuaMatrix4)());
4233     tolua_pushusertype(tolua_S,(void*)tolua_ret,"LuaMatrix4");
4234   }
4235  }
4236  return 1;
4237 #ifndef TOLUA_RELEASE
4238  tolua_lerror:
4239  tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err);
4240  return 0;
4241 #endif
4242 }
4243 #endif //#ifndef TOLUA_DISABLE
4244
4245 /* method: new_local of class  LuaMatrix4 */
4246 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_new00_local
4247 static int tolua__LuaMatrix4_new00_local(lua_State* tolua_S)
4248 {
4249 #ifndef TOLUA_RELEASE
4250  tolua_Error tolua_err;
4251  if (
4252      !tolua_isusertable(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4253      !tolua_isnoobj(tolua_S,2,&tolua_err)
4254  )
4255   goto tolua_lerror;
4256  else
4257 #endif
4258  {
4259   {
4260    LuaMatrix4* tolua_ret = (LuaMatrix4*)  Mtolua_new((LuaMatrix4)());
4261     tolua_pushusertype(tolua_S,(void*)tolua_ret,"LuaMatrix4");
4262     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4263   }
4264  }
4265  return 1;
4266 #ifndef TOLUA_RELEASE
4267  tolua_lerror:
4268  tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err);
4269  return 0;
4270 #endif
4271 }
4272 #endif //#ifndef TOLUA_DISABLE
4273
4274 /* method: new of class  LuaMatrix4 */
4275 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_new01
4276 static int tolua__LuaMatrix4_new01(lua_State* tolua_S)
4277 {
4278  tolua_Error tolua_err;
4279  if (
4280      !tolua_isusertable(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4281      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4282      !tolua_isnoobj(tolua_S,3,&tolua_err)
4283  )
4284   goto tolua_lerror;
4285  else
4286  {
4287   float m = ((float)  tolua_tonumber(tolua_S,2,0));
4288   {
4289    LuaMatrix4* tolua_ret = (LuaMatrix4*)  Mtolua_new((LuaMatrix4)(m));
4290     tolua_pushusertype(tolua_S,(void*)tolua_ret,"LuaMatrix4");
4291   }
4292  }
4293  return 1;
4294 tolua_lerror:
4295  return tolua__LuaMatrix4_new00(tolua_S);
4296 }
4297 #endif //#ifndef TOLUA_DISABLE
4298
4299 /* method: new_local of class  LuaMatrix4 */
4300 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_new01_local
4301 static int tolua__LuaMatrix4_new01_local(lua_State* tolua_S)
4302 {
4303  tolua_Error tolua_err;
4304  if (
4305      !tolua_isusertable(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4306      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4307      !tolua_isnoobj(tolua_S,3,&tolua_err)
4308  )
4309   goto tolua_lerror;
4310  else
4311  {
4312   float m = ((float)  tolua_tonumber(tolua_S,2,0));
4313   {
4314    LuaMatrix4* tolua_ret = (LuaMatrix4*)  Mtolua_new((LuaMatrix4)(m));
4315     tolua_pushusertype(tolua_S,(void*)tolua_ret,"LuaMatrix4");
4316     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4317   }
4318  }
4319  return 1;
4320 tolua_lerror:
4321  return tolua__LuaMatrix4_new00_local(tolua_S);
4322 }
4323 #endif //#ifndef TOLUA_DISABLE
4324
4325 /* method: new of class  LuaMatrix4 */
4326 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_new02
4327 static int tolua__LuaMatrix4_new02(lua_State* tolua_S)
4328 {
4329  tolua_Error tolua_err;
4330  if (
4331      !tolua_isusertable(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4332      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const LuaMatrix4",0,&tolua_err)) ||
4333      !tolua_isnoobj(tolua_S,3,&tolua_err)
4334  )
4335   goto tolua_lerror;
4336  else
4337  {
4338   const LuaMatrix4* rhs = ((const LuaMatrix4*)  tolua_tousertype(tolua_S,2,0));
4339   {
4340    LuaMatrix4* tolua_ret = (LuaMatrix4*)  Mtolua_new((LuaMatrix4)(*rhs));
4341     tolua_pushusertype(tolua_S,(void*)tolua_ret,"LuaMatrix4");
4342   }
4343  }
4344  return 1;
4345 tolua_lerror:
4346  return tolua__LuaMatrix4_new01(tolua_S);
4347 }
4348 #endif //#ifndef TOLUA_DISABLE
4349
4350 /* method: new_local of class  LuaMatrix4 */
4351 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_new02_local
4352 static int tolua__LuaMatrix4_new02_local(lua_State* tolua_S)
4353 {
4354  tolua_Error tolua_err;
4355  if (
4356      !tolua_isusertable(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4357      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const LuaMatrix4",0,&tolua_err)) ||
4358      !tolua_isnoobj(tolua_S,3,&tolua_err)
4359  )
4360   goto tolua_lerror;
4361  else
4362  {
4363   const LuaMatrix4* rhs = ((const LuaMatrix4*)  tolua_tousertype(tolua_S,2,0));
4364   {
4365    LuaMatrix4* tolua_ret = (LuaMatrix4*)  Mtolua_new((LuaMatrix4)(*rhs));
4366     tolua_pushusertype(tolua_S,(void*)tolua_ret,"LuaMatrix4");
4367     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4368   }
4369  }
4370  return 1;
4371 tolua_lerror:
4372  return tolua__LuaMatrix4_new01_local(tolua_S);
4373 }
4374 #endif //#ifndef TOLUA_DISABLE
4375
4376 /* method: new of class  LuaMatrix4 */
4377 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_new03
4378 static int tolua__LuaMatrix4_new03(lua_State* tolua_S)
4379 {
4380  tolua_Error tolua_err;
4381  if (
4382      !tolua_isusertable(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4383      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4384      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4385      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4386      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
4387      !tolua_isnumber(tolua_S,6,0,&tolua_err) ||
4388      !tolua_isnumber(tolua_S,7,0,&tolua_err) ||
4389      !tolua_isnumber(tolua_S,8,0,&tolua_err) ||
4390      !tolua_isnumber(tolua_S,9,0,&tolua_err) ||
4391      !tolua_isnumber(tolua_S,10,0,&tolua_err) ||
4392      !tolua_isnumber(tolua_S,11,0,&tolua_err) ||
4393      !tolua_isnumber(tolua_S,12,0,&tolua_err) ||
4394      !tolua_isnumber(tolua_S,13,0,&tolua_err) ||
4395      !tolua_isnumber(tolua_S,14,0,&tolua_err) ||
4396      !tolua_isnumber(tolua_S,15,0,&tolua_err) ||
4397      !tolua_isnumber(tolua_S,16,0,&tolua_err) ||
4398      !tolua_isnumber(tolua_S,17,0,&tolua_err) ||
4399      !tolua_isnoobj(tolua_S,18,&tolua_err)
4400  )
4401   goto tolua_lerror;
4402  else
4403  {
4404   float m0 = ((float)  tolua_tonumber(tolua_S,2,0));
4405   float m1 = ((float)  tolua_tonumber(tolua_S,3,0));
4406   float m2 = ((float)  tolua_tonumber(tolua_S,4,0));
4407   float m3 = ((float)  tolua_tonumber(tolua_S,5,0));
4408   float m4 = ((float)  tolua_tonumber(tolua_S,6,0));
4409   float m5 = ((float)  tolua_tonumber(tolua_S,7,0));
4410   float m6 = ((float)  tolua_tonumber(tolua_S,8,0));
4411   float m7 = ((float)  tolua_tonumber(tolua_S,9,0));
4412   float m8 = ((float)  tolua_tonumber(tolua_S,10,0));
4413   float m9 = ((float)  tolua_tonumber(tolua_S,11,0));
4414   float m10 = ((float)  tolua_tonumber(tolua_S,12,0));
4415   float m11 = ((float)  tolua_tonumber(tolua_S,13,0));
4416   float m12 = ((float)  tolua_tonumber(tolua_S,14,0));
4417   float m13 = ((float)  tolua_tonumber(tolua_S,15,0));
4418   float m14 = ((float)  tolua_tonumber(tolua_S,16,0));
4419   float m15 = ((float)  tolua_tonumber(tolua_S,17,0));
4420   {
4421    LuaMatrix4* tolua_ret = (LuaMatrix4*)  Mtolua_new((LuaMatrix4)(m0,m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12,m13,m14,m15));
4422     tolua_pushusertype(tolua_S,(void*)tolua_ret,"LuaMatrix4");
4423   }
4424  }
4425  return 1;
4426 tolua_lerror:
4427  return tolua__LuaMatrix4_new02(tolua_S);
4428 }
4429 #endif //#ifndef TOLUA_DISABLE
4430
4431 /* method: new_local of class  LuaMatrix4 */
4432 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_new03_local
4433 static int tolua__LuaMatrix4_new03_local(lua_State* tolua_S)
4434 {
4435  tolua_Error tolua_err;
4436  if (
4437      !tolua_isusertable(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4438      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4439      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4440      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4441      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
4442      !tolua_isnumber(tolua_S,6,0,&tolua_err) ||
4443      !tolua_isnumber(tolua_S,7,0,&tolua_err) ||
4444      !tolua_isnumber(tolua_S,8,0,&tolua_err) ||
4445      !tolua_isnumber(tolua_S,9,0,&tolua_err) ||
4446      !tolua_isnumber(tolua_S,10,0,&tolua_err) ||
4447      !tolua_isnumber(tolua_S,11,0,&tolua_err) ||
4448      !tolua_isnumber(tolua_S,12,0,&tolua_err) ||
4449      !tolua_isnumber(tolua_S,13,0,&tolua_err) ||
4450      !tolua_isnumber(tolua_S,14,0,&tolua_err) ||
4451      !tolua_isnumber(tolua_S,15,0,&tolua_err) ||
4452      !tolua_isnumber(tolua_S,16,0,&tolua_err) ||
4453      !tolua_isnumber(tolua_S,17,0,&tolua_err) ||
4454      !tolua_isnoobj(tolua_S,18,&tolua_err)
4455  )
4456   goto tolua_lerror;
4457  else
4458  {
4459   float m0 = ((float)  tolua_tonumber(tolua_S,2,0));
4460   float m1 = ((float)  tolua_tonumber(tolua_S,3,0));
4461   float m2 = ((float)  tolua_tonumber(tolua_S,4,0));
4462   float m3 = ((float)  tolua_tonumber(tolua_S,5,0));
4463   float m4 = ((float)  tolua_tonumber(tolua_S,6,0));
4464   float m5 = ((float)  tolua_tonumber(tolua_S,7,0));
4465   float m6 = ((float)  tolua_tonumber(tolua_S,8,0));
4466   float m7 = ((float)  tolua_tonumber(tolua_S,9,0));
4467   float m8 = ((float)  tolua_tonumber(tolua_S,10,0));
4468   float m9 = ((float)  tolua_tonumber(tolua_S,11,0));
4469   float m10 = ((float)  tolua_tonumber(tolua_S,12,0));
4470   float m11 = ((float)  tolua_tonumber(tolua_S,13,0));
4471   float m12 = ((float)  tolua_tonumber(tolua_S,14,0));
4472   float m13 = ((float)  tolua_tonumber(tolua_S,15,0));
4473   float m14 = ((float)  tolua_tonumber(tolua_S,16,0));
4474   float m15 = ((float)  tolua_tonumber(tolua_S,17,0));
4475   {
4476    LuaMatrix4* tolua_ret = (LuaMatrix4*)  Mtolua_new((LuaMatrix4)(m0,m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12,m13,m14,m15));
4477     tolua_pushusertype(tolua_S,(void*)tolua_ret,"LuaMatrix4");
4478     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4479   }
4480  }
4481  return 1;
4482 tolua_lerror:
4483  return tolua__LuaMatrix4_new02_local(tolua_S);
4484 }
4485 #endif //#ifndef TOLUA_DISABLE
4486
4487 /* method: SetIdentity of class  LuaMatrix4 */
4488 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_SetIdentity00
4489 static int tolua__LuaMatrix4_SetIdentity00(lua_State* tolua_S)
4490 {
4491 #ifndef TOLUA_RELEASE
4492  tolua_Error tolua_err;
4493  if (
4494      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4495      !tolua_isnoobj(tolua_S,2,&tolua_err)
4496  )
4497   goto tolua_lerror;
4498  else
4499 #endif
4500  {
4501   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4502 #ifndef TOLUA_RELEASE
4503   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'SetIdentity'", NULL);
4504 #endif
4505   {
4506    self->SetIdentity();
4507   }
4508  }
4509  return 0;
4510 #ifndef TOLUA_RELEASE
4511  tolua_lerror:
4512  tolua_error(tolua_S,"#ferror in function 'SetIdentity'.",&tolua_err);
4513  return 0;
4514 #endif
4515 }
4516 #endif //#ifndef TOLUA_DISABLE
4517
4518 /* method: Translate of class  LuaMatrix4 */
4519 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_Translate00
4520 static int tolua__LuaMatrix4_Translate00(lua_State* tolua_S)
4521 {
4522 #ifndef TOLUA_RELEASE
4523  tolua_Error tolua_err;
4524  if (
4525      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4526      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4527      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4528      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4529      !tolua_isnoobj(tolua_S,5,&tolua_err)
4530  )
4531   goto tolua_lerror;
4532  else
4533 #endif
4534  {
4535   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4536   float x0 = ((float)  tolua_tonumber(tolua_S,2,0));
4537   float y0 = ((float)  tolua_tonumber(tolua_S,3,0));
4538   float z0 = ((float)  tolua_tonumber(tolua_S,4,0));
4539 #ifndef TOLUA_RELEASE
4540   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'Translate'", NULL);
4541 #endif
4542   {
4543    self->Translate(x0,y0,z0);
4544   }
4545  }
4546  return 0;
4547 #ifndef TOLUA_RELEASE
4548  tolua_lerror:
4549  tolua_error(tolua_S,"#ferror in function 'Translate'.",&tolua_err);
4550  return 0;
4551 #endif
4552 }
4553 #endif //#ifndef TOLUA_DISABLE
4554
4555 /* method: Scale of class  LuaMatrix4 */
4556 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_Scale00
4557 static int tolua__LuaMatrix4_Scale00(lua_State* tolua_S)
4558 {
4559 #ifndef TOLUA_RELEASE
4560  tolua_Error tolua_err;
4561  if (
4562      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4563      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4564      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4565      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4566      !tolua_isnoobj(tolua_S,5,&tolua_err)
4567  )
4568   goto tolua_lerror;
4569  else
4570 #endif
4571  {
4572   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4573   float multiplierX = ((float)  tolua_tonumber(tolua_S,2,0));
4574   float multiplierY = ((float)  tolua_tonumber(tolua_S,3,0));
4575   float multiplierZ = ((float)  tolua_tonumber(tolua_S,4,0));
4576 #ifndef TOLUA_RELEASE
4577   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'Scale'", NULL);
4578 #endif
4579   {
4580    bool tolua_ret = (bool)  self->Scale(multiplierX,multiplierY,multiplierZ);
4581    tolua_pushboolean(tolua_S,(bool)tolua_ret);
4582   }
4583  }
4584  return 1;
4585 #ifndef TOLUA_RELEASE
4586  tolua_lerror:
4587  tolua_error(tolua_S,"#ferror in function 'Scale'.",&tolua_err);
4588  return 0;
4589 #endif
4590 }
4591 #endif //#ifndef TOLUA_DISABLE
4592
4593 /* method: Scale of class  LuaMatrix4 */
4594 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_Scale01
4595 static int tolua__LuaMatrix4_Scale01(lua_State* tolua_S)
4596 {
4597  tolua_Error tolua_err;
4598  if (
4599      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4600      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4601      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4602      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4603      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
4604      !tolua_isnumber(tolua_S,6,0,&tolua_err) ||
4605      !tolua_isnumber(tolua_S,7,0,&tolua_err) ||
4606      !tolua_isnoobj(tolua_S,8,&tolua_err)
4607  )
4608   goto tolua_lerror;
4609  else
4610  {
4611   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4612   float multiplierX = ((float)  tolua_tonumber(tolua_S,2,0));
4613   float multiplierY = ((float)  tolua_tonumber(tolua_S,3,0));
4614   float multiplierZ = ((float)  tolua_tonumber(tolua_S,4,0));
4615   float x0 = ((float)  tolua_tonumber(tolua_S,5,0));
4616   float y0 = ((float)  tolua_tonumber(tolua_S,6,0));
4617   float z0 = ((float)  tolua_tonumber(tolua_S,7,0));
4618 #ifndef TOLUA_RELEASE
4619   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'Scale'", NULL);
4620 #endif
4621   {
4622    bool tolua_ret = (bool)  self->Scale(multiplierX,multiplierY,multiplierZ,x0,y0,z0);
4623    tolua_pushboolean(tolua_S,(bool)tolua_ret);
4624   }
4625  }
4626  return 1;
4627 tolua_lerror:
4628  return tolua__LuaMatrix4_Scale00(tolua_S);
4629 }
4630 #endif //#ifndef TOLUA_DISABLE
4631
4632 /* method: RotateAroundAxisZ of class  LuaMatrix4 */
4633 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_RotateAroundAxisZ00
4634 static int tolua__LuaMatrix4_RotateAroundAxisZ00(lua_State* tolua_S)
4635 {
4636 #ifndef TOLUA_RELEASE
4637  tolua_Error tolua_err;
4638  if (
4639      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4640      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4641      !tolua_isnoobj(tolua_S,3,&tolua_err)
4642  )
4643   goto tolua_lerror;
4644  else
4645 #endif
4646  {
4647   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4648   float angle = ((float)  tolua_tonumber(tolua_S,2,0));
4649 #ifndef TOLUA_RELEASE
4650   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateAroundAxisZ'", NULL);
4651 #endif
4652   {
4653    self->RotateAroundAxisZ(angle);
4654   }
4655  }
4656  return 0;
4657 #ifndef TOLUA_RELEASE
4658  tolua_lerror:
4659  tolua_error(tolua_S,"#ferror in function 'RotateAroundAxisZ'.",&tolua_err);
4660  return 0;
4661 #endif
4662 }
4663 #endif //#ifndef TOLUA_DISABLE
4664
4665 /* method: RotateAroundAxisZ of class  LuaMatrix4 */
4666 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_RotateAroundAxisZ01
4667 static int tolua__LuaMatrix4_RotateAroundAxisZ01(lua_State* tolua_S)
4668 {
4669  tolua_Error tolua_err;
4670  if (
4671      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4672      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4673      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4674      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4675      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
4676      !tolua_isnoobj(tolua_S,6,&tolua_err)
4677  )
4678   goto tolua_lerror;
4679  else
4680  {
4681   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4682   float angle = ((float)  tolua_tonumber(tolua_S,2,0));
4683   float x0 = ((float)  tolua_tonumber(tolua_S,3,0));
4684   float y0 = ((float)  tolua_tonumber(tolua_S,4,0));
4685   float z0 = ((float)  tolua_tonumber(tolua_S,5,0));
4686 #ifndef TOLUA_RELEASE
4687   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateAroundAxisZ'", NULL);
4688 #endif
4689   {
4690    self->RotateAroundAxisZ(angle,x0,y0,z0);
4691   }
4692  }
4693  return 0;
4694 tolua_lerror:
4695  return tolua__LuaMatrix4_RotateAroundAxisZ00(tolua_S);
4696 }
4697 #endif //#ifndef TOLUA_DISABLE
4698
4699 /* method: RotateAroundAxisX of class  LuaMatrix4 */
4700 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_RotateAroundAxisX00
4701 static int tolua__LuaMatrix4_RotateAroundAxisX00(lua_State* tolua_S)
4702 {
4703 #ifndef TOLUA_RELEASE
4704  tolua_Error tolua_err;
4705  if (
4706      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4707      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4708      !tolua_isnoobj(tolua_S,3,&tolua_err)
4709  )
4710   goto tolua_lerror;
4711  else
4712 #endif
4713  {
4714   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4715   float angle = ((float)  tolua_tonumber(tolua_S,2,0));
4716 #ifndef TOLUA_RELEASE
4717   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateAroundAxisX'", NULL);
4718 #endif
4719   {
4720    self->RotateAroundAxisX(angle);
4721   }
4722  }
4723  return 0;
4724 #ifndef TOLUA_RELEASE
4725  tolua_lerror:
4726  tolua_error(tolua_S,"#ferror in function 'RotateAroundAxisX'.",&tolua_err);
4727  return 0;
4728 #endif
4729 }
4730 #endif //#ifndef TOLUA_DISABLE
4731
4732 /* method: RotateAroundAxisX of class  LuaMatrix4 */
4733 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_RotateAroundAxisX01
4734 static int tolua__LuaMatrix4_RotateAroundAxisX01(lua_State* tolua_S)
4735 {
4736  tolua_Error tolua_err;
4737  if (
4738      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4739      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4740      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4741      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4742      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
4743      !tolua_isnoobj(tolua_S,6,&tolua_err)
4744  )
4745   goto tolua_lerror;
4746  else
4747  {
4748   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4749   float angle = ((float)  tolua_tonumber(tolua_S,2,0));
4750   float x0 = ((float)  tolua_tonumber(tolua_S,3,0));
4751   float y0 = ((float)  tolua_tonumber(tolua_S,4,0));
4752   float z0 = ((float)  tolua_tonumber(tolua_S,5,0));
4753 #ifndef TOLUA_RELEASE
4754   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateAroundAxisX'", NULL);
4755 #endif
4756   {
4757    self->RotateAroundAxisX(angle,x0,y0,z0);
4758   }
4759  }
4760  return 0;
4761 tolua_lerror:
4762  return tolua__LuaMatrix4_RotateAroundAxisX00(tolua_S);
4763 }
4764 #endif //#ifndef TOLUA_DISABLE
4765
4766 /* method: RotateAroundAxisY of class  LuaMatrix4 */
4767 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_RotateAroundAxisY00
4768 static int tolua__LuaMatrix4_RotateAroundAxisY00(lua_State* tolua_S)
4769 {
4770 #ifndef TOLUA_RELEASE
4771  tolua_Error tolua_err;
4772  if (
4773      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4774      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4775      !tolua_isnoobj(tolua_S,3,&tolua_err)
4776  )
4777   goto tolua_lerror;
4778  else
4779 #endif
4780  {
4781   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4782   float angle = ((float)  tolua_tonumber(tolua_S,2,0));
4783 #ifndef TOLUA_RELEASE
4784   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateAroundAxisY'", NULL);
4785 #endif
4786   {
4787    self->RotateAroundAxisY(angle);
4788   }
4789  }
4790  return 0;
4791 #ifndef TOLUA_RELEASE
4792  tolua_lerror:
4793  tolua_error(tolua_S,"#ferror in function 'RotateAroundAxisY'.",&tolua_err);
4794  return 0;
4795 #endif
4796 }
4797 #endif //#ifndef TOLUA_DISABLE
4798
4799 /* method: RotateAroundAxisY of class  LuaMatrix4 */
4800 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_RotateAroundAxisY01
4801 static int tolua__LuaMatrix4_RotateAroundAxisY01(lua_State* tolua_S)
4802 {
4803  tolua_Error tolua_err;
4804  if (
4805      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4806      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4807      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4808      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4809      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
4810      !tolua_isnoobj(tolua_S,6,&tolua_err)
4811  )
4812   goto tolua_lerror;
4813  else
4814  {
4815   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4816   float angle = ((float)  tolua_tonumber(tolua_S,2,0));
4817   float x0 = ((float)  tolua_tonumber(tolua_S,3,0));
4818   float y0 = ((float)  tolua_tonumber(tolua_S,4,0));
4819   float z0 = ((float)  tolua_tonumber(tolua_S,5,0));
4820 #ifndef TOLUA_RELEASE
4821   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateAroundAxisY'", NULL);
4822 #endif
4823   {
4824    self->RotateAroundAxisY(angle,x0,y0,z0);
4825   }
4826  }
4827  return 0;
4828 tolua_lerror:
4829  return tolua__LuaMatrix4_RotateAroundAxisY00(tolua_S);
4830 }
4831 #endif //#ifndef TOLUA_DISABLE
4832
4833 /* method: RotateAroundAxisArbitrary of class  LuaMatrix4 */
4834 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_RotateAroundAxisArbitrary00
4835 static int tolua__LuaMatrix4_RotateAroundAxisArbitrary00(lua_State* tolua_S)
4836 {
4837 #ifndef TOLUA_RELEASE
4838  tolua_Error tolua_err;
4839  if (
4840      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4841      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4842      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4843      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4844      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
4845      !tolua_isnoobj(tolua_S,6,&tolua_err)
4846  )
4847   goto tolua_lerror;
4848  else
4849 #endif
4850  {
4851   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4852   float angle = ((float)  tolua_tonumber(tolua_S,2,0));
4853   float projectionX = ((float)  tolua_tonumber(tolua_S,3,0));
4854   float projectionY = ((float)  tolua_tonumber(tolua_S,4,0));
4855   float projectionZ = ((float)  tolua_tonumber(tolua_S,5,0));
4856 #ifndef TOLUA_RELEASE
4857   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateAroundAxisArbitrary'", NULL);
4858 #endif
4859   {
4860    bool tolua_ret = (bool)  self->RotateAroundAxisArbitrary(angle,projectionX,projectionY,projectionZ);
4861    tolua_pushboolean(tolua_S,(bool)tolua_ret);
4862   }
4863  }
4864  return 1;
4865 #ifndef TOLUA_RELEASE
4866  tolua_lerror:
4867  tolua_error(tolua_S,"#ferror in function 'RotateAroundAxisArbitrary'.",&tolua_err);
4868  return 0;
4869 #endif
4870 }
4871 #endif //#ifndef TOLUA_DISABLE
4872
4873 /* method: RotateAroundAxisArbitrary of class  LuaMatrix4 */
4874 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4_RotateAroundAxisArbitrary01
4875 static int tolua__LuaMatrix4_RotateAroundAxisArbitrary01(lua_State* tolua_S)
4876 {
4877  tolua_Error tolua_err;
4878  if (
4879      !tolua_isusertype(tolua_S,1,"LuaMatrix4",0,&tolua_err) ||
4880      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4881      !tolua_isnumber(tolua_S,3,0,&tolua_err) ||
4882      !tolua_isnumber(tolua_S,4,0,&tolua_err) ||
4883      !tolua_isnumber(tolua_S,5,0,&tolua_err) ||
4884      !tolua_isnumber(tolua_S,6,0,&tolua_err) ||
4885      !tolua_isnumber(tolua_S,7,0,&tolua_err) ||
4886      !tolua_isnumber(tolua_S,8,0,&tolua_err) ||
4887      !tolua_isnoobj(tolua_S,9,&tolua_err)
4888  )
4889   goto tolua_lerror;
4890  else
4891  {
4892   LuaMatrix4* self = (LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4893   float angle = ((float)  tolua_tonumber(tolua_S,2,0));
4894   float projectionX = ((float)  tolua_tonumber(tolua_S,3,0));
4895   float projectionY = ((float)  tolua_tonumber(tolua_S,4,0));
4896   float projectionZ = ((float)  tolua_tonumber(tolua_S,5,0));
4897   float x0 = ((float)  tolua_tonumber(tolua_S,6,0));
4898   float y0 = ((float)  tolua_tonumber(tolua_S,7,0));
4899   float z0 = ((float)  tolua_tonumber(tolua_S,8,0));
4900 #ifndef TOLUA_RELEASE
4901   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'RotateAroundAxisArbitrary'", NULL);
4902 #endif
4903   {
4904    bool tolua_ret = (bool)  self->RotateAroundAxisArbitrary(angle,projectionX,projectionY,projectionZ,x0,y0,z0);
4905    tolua_pushboolean(tolua_S,(bool)tolua_ret);
4906   }
4907  }
4908  return 1;
4909 tolua_lerror:
4910  return tolua__LuaMatrix4_RotateAroundAxisArbitrary00(tolua_S);
4911 }
4912 #endif //#ifndef TOLUA_DISABLE
4913
4914 /* method: operator* of class  LuaMatrix4 */
4915 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4__mul00
4916 static int tolua__LuaMatrix4__mul00(lua_State* tolua_S)
4917 {
4918 #ifndef TOLUA_RELEASE
4919  tolua_Error tolua_err;
4920  if (
4921      !tolua_isusertype(tolua_S,1,"const LuaMatrix4",0,&tolua_err) ||
4922      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const LuaMatrix4",0,&tolua_err)) ||
4923      !tolua_isnoobj(tolua_S,3,&tolua_err)
4924  )
4925   goto tolua_lerror;
4926  else
4927 #endif
4928  {
4929   const LuaMatrix4* self = (const LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4930   const LuaMatrix4* mul = ((const LuaMatrix4*)  tolua_tousertype(tolua_S,2,0));
4931 #ifndef TOLUA_RELEASE
4932   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator*'", NULL);
4933 #endif
4934   {
4935    LuaMatrix4 tolua_ret = (LuaMatrix4)  self->operator*(*mul);
4936    {
4937 #ifdef __cplusplus
4938     void* tolua_obj = Mtolua_new((LuaMatrix4)(tolua_ret));
4939      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
4940     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4941 #else
4942     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(LuaMatrix4));
4943      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
4944     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4945 #endif
4946    }
4947   }
4948  }
4949  return 1;
4950 #ifndef TOLUA_RELEASE
4951  tolua_lerror:
4952  tolua_error(tolua_S,"#ferror in function '.mul'.",&tolua_err);
4953  return 0;
4954 #endif
4955 }
4956 #endif //#ifndef TOLUA_DISABLE
4957
4958 /* method: operator* of class  LuaMatrix4 */
4959 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4__mul01
4960 static int tolua__LuaMatrix4__mul01(lua_State* tolua_S)
4961 {
4962  tolua_Error tolua_err;
4963  if (
4964      !tolua_isusertype(tolua_S,1,"const LuaMatrix4",0,&tolua_err) ||
4965      !tolua_isnumber(tolua_S,2,0,&tolua_err) ||
4966      !tolua_isnoobj(tolua_S,3,&tolua_err)
4967  )
4968   goto tolua_lerror;
4969  else
4970  {
4971   const LuaMatrix4* self = (const LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
4972   const float mul = ((const float)  tolua_tonumber(tolua_S,2,0));
4973 #ifndef TOLUA_RELEASE
4974   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator*'", NULL);
4975 #endif
4976   {
4977    LuaMatrix4 tolua_ret = (LuaMatrix4)  self->operator*(mul);
4978    {
4979 #ifdef __cplusplus
4980     void* tolua_obj = Mtolua_new((LuaMatrix4)(tolua_ret));
4981      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
4982     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4983 #else
4984     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(LuaMatrix4));
4985      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
4986     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
4987 #endif
4988    }
4989   }
4990  }
4991  return 1;
4992 tolua_lerror:
4993         if (
4994                 !tolua_isusertype(tolua_S,2,"const LuaMatrix4",0,&tolua_err) ||
4995                 !tolua_isnumber(tolua_S,1,0,&tolua_err) ||
4996                 !tolua_isnoobj(tolua_S,3,&tolua_err)
4997            )
4998         goto tolua_lerror1;
4999         else
5000         {
5001                 const LuaMatrix4* self = (const LuaMatrix4*) tolua_tousertype(tolua_S,2,0);
5002                 const float aRhv = ((const float)  tolua_tonumber(tolua_S,1,0));
5003                 #ifndef TOLUA_RELEASE
5004                         if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator*'", NULL);
5005                 #endif
5006                 {
5007                         LuaMatrix4 tolua_ret = (LuaMatrix4)  self->operator*(aRhv);
5008                         {
5009                                 #ifdef __cplusplus
5010                                         void* tolua_obj = Mtolua_new((LuaMatrix4)(tolua_ret));
5011                                         tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
5012                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
5013                                 #else
5014                                         void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(LuaMatrix4));
5015                                         tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
5016                                         tolua_register_gc(tolua_S,lua_gettop(tolua_S));
5017                                 #endif
5018                         }
5019                 }
5020         }
5021         return 1;
5022         tolua_lerror1:
5023  return tolua__LuaMatrix4__mul00(tolua_S);
5024 }
5025 #endif //#ifndef TOLUA_DISABLE
5026
5027 /* method: operator+ of class  LuaMatrix4 */
5028 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4__add00
5029 static int tolua__LuaMatrix4__add00(lua_State* tolua_S)
5030 {
5031 #ifndef TOLUA_RELEASE
5032  tolua_Error tolua_err;
5033  if (
5034      !tolua_isusertype(tolua_S,1,"const LuaMatrix4",0,&tolua_err) ||
5035      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const LuaMatrix4",0,&tolua_err)) ||
5036      !tolua_isnoobj(tolua_S,3,&tolua_err)
5037  )
5038   goto tolua_lerror;
5039  else
5040 #endif
5041  {
5042   const LuaMatrix4* self = (const LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
5043   const LuaMatrix4* add = ((const LuaMatrix4*)  tolua_tousertype(tolua_S,2,0));
5044 #ifndef TOLUA_RELEASE
5045   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator+'", NULL);
5046 #endif
5047   {
5048    LuaMatrix4 tolua_ret = (LuaMatrix4)  self->operator+(*add);
5049    {
5050 #ifdef __cplusplus
5051     void* tolua_obj = Mtolua_new((LuaMatrix4)(tolua_ret));
5052      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
5053     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
5054 #else
5055     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(LuaMatrix4));
5056      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
5057     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
5058 #endif
5059    }
5060   }
5061  }
5062  return 1;
5063 #ifndef TOLUA_RELEASE
5064  tolua_lerror:
5065  tolua_error(tolua_S,"#ferror in function '.add'.",&tolua_err);
5066  return 0;
5067 #endif
5068 }
5069 #endif //#ifndef TOLUA_DISABLE
5070
5071 /* method: operator- of class  LuaMatrix4 */
5072 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4__sub00
5073 static int tolua__LuaMatrix4__sub00(lua_State* tolua_S)
5074 {
5075 #ifndef TOLUA_RELEASE
5076  tolua_Error tolua_err;
5077  if (
5078      !tolua_isusertype(tolua_S,1,"const LuaMatrix4",0,&tolua_err) ||
5079      (tolua_isvaluenil(tolua_S,2,&tolua_err) || !tolua_isusertype(tolua_S,2,"const LuaMatrix4",0,&tolua_err)) ||
5080      !tolua_isnoobj(tolua_S,3,&tolua_err)
5081  )
5082   goto tolua_lerror;
5083  else
5084 #endif
5085  {
5086   const LuaMatrix4* self = (const LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
5087   const LuaMatrix4* sub = ((const LuaMatrix4*)  tolua_tousertype(tolua_S,2,0));
5088 #ifndef TOLUA_RELEASE
5089   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator-'", NULL);
5090 #endif
5091   {
5092    LuaMatrix4 tolua_ret = (LuaMatrix4)  self->operator-(*sub);
5093    {
5094 #ifdef __cplusplus
5095     void* tolua_obj = Mtolua_new((LuaMatrix4)(tolua_ret));
5096      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
5097     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
5098 #else
5099     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(LuaMatrix4));
5100      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
5101     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
5102 #endif
5103    }
5104   }
5105  }
5106  return 1;
5107 #ifndef TOLUA_RELEASE
5108  tolua_lerror:
5109  tolua_error(tolua_S,"#ferror in function '.sub'.",&tolua_err);
5110  return 0;
5111 #endif
5112 }
5113 #endif //#ifndef TOLUA_DISABLE
5114
5115 /* method: operator- of class  LuaMatrix4 */
5116 #ifndef TOLUA_DISABLE_tolua__LuaMatrix4__sub01
5117 static int tolua__LuaMatrix4__sub01(lua_State* tolua_S)
5118 {
5119  tolua_Error tolua_err;
5120  if (
5121      !tolua_isusertype(tolua_S,1,"const LuaMatrix4",0,&tolua_err) ||
5122      !tolua_isnoobj(tolua_S,2,&tolua_err)
5123  )
5124   goto tolua_lerror;
5125  else
5126  {
5127   const LuaMatrix4* self = (const LuaMatrix4*)  tolua_tousertype(tolua_S,1,0);
5128 #ifndef TOLUA_RELEASE
5129   if (!self) tolua_error(tolua_S,"invalid 'self' in function 'operator-'", NULL);
5130 #endif
5131   {
5132    LuaMatrix4 tolua_ret = (LuaMatrix4)  self->operator-();
5133    {
5134 #ifdef __cplusplus
5135     void* tolua_obj = Mtolua_new((LuaMatrix4)(tolua_ret));
5136      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
5137     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
5138 #else
5139     void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(LuaMatrix4));
5140      tolua_pushusertype(tolua_S,tolua_obj,"LuaMatrix4");
5141     tolua_register_gc(tolua_S,lua_gettop(tolua_S));
5142 #endif
5143    }
5144   }
5145  }
5146  return 1;
5147 tolua_lerror:
5148  return tolua__LuaMatrix4__sub00(tolua_S);
5149 }
5150 #endif //#ifndef TOLUA_DISABLE
5151
5152 /* Open function */
5153 TOLUA_API int tolua__open (lua_State* tolua_S)
5154 {
5155  tolua_open(tolua_S);
5156  tolua_reg_types(tolua_S);
5157  tolua_module(tolua_S,NULL,0);
5158  tolua_beginmodule(tolua_S,NULL);
5159   tolua_cclass(tolua_S,"EffectModelScript","EffectModelScript","",NULL);
5160   tolua_beginmodule(tolua_S,"EffectModelScript");
5161    tolua_function(tolua_S,"GetProperty",tolua__EffectModelScript_GetProperty00);
5162    tolua_function(tolua_S,"SetProperty",tolua__EffectModelScript_SetProperty00);
5163    tolua_function(tolua_S,"SetProperty",tolua__EffectModelScript_SetProperty01);
5164    tolua_function(tolua_S,"SetProperty",tolua__EffectModelScript_SetProperty02);
5165    tolua_function(tolua_S,"SetPropertyGroup",tolua__EffectModelScript_SetPropertyGroup00);
5166    tolua_function(tolua_S,"GetDistanceFromGround",tolua__EffectModelScript_GetDistanceFromGround00);
5167    tolua_function(tolua_S,"UpdateBitmap",tolua__EffectModelScript_UpdateBitmap00);
5168    tolua_function(tolua_S,"GetNearestPointsIds",tolua__EffectModelScript_GetNearestPointsIds00);
5169    tolua_function(tolua_S,"GetNearestPointsIds",tolua__EffectModelScript_GetNearestPointsIds01);
5170    tolua_function(tolua_S,"RotateSurfaceN",tolua__EffectModelScript_RotateSurfaceN00);
5171    tolua_function(tolua_S,"RotateSurfaceV",tolua__EffectModelScript_RotateSurfaceV00);
5172    tolua_function(tolua_S,"RotateSurfaceV",tolua__EffectModelScript_RotateSurfaceV01);
5173    tolua_function(tolua_S,"RotateSurfaceV",tolua__EffectModelScript_RotateSurfaceV02);
5174    tolua_function(tolua_S,"ScaleSurface",tolua__EffectModelScript_ScaleSurface00);
5175    tolua_function(tolua_S,"ScaleSurface",tolua__EffectModelScript_ScaleSurface01);
5176    tolua_function(tolua_S,"ScaleSurface",tolua__EffectModelScript_ScaleSurface02);
5177    tolua_function(tolua_S,"MoveSurface",tolua__EffectModelScript_MoveSurface00);
5178    tolua_function(tolua_S,"MoveSurface",tolua__EffectModelScript_MoveSurface01);
5179    tolua_function(tolua_S,"ResetSurfaceTransformation",tolua__EffectModelScript_ResetSurfaceTransformation00);
5180    tolua_function(tolua_S,"PrintLuaInfo",tolua__EffectModelScript_PrintLuaInfo00);
5181    tolua_function(tolua_S,"SetTransformationMatrix",tolua__EffectModelScript_SetTransformationMatrix00);
5182    tolua_function(tolua_S,"AddUnitLight",tolua__EffectModelScript_AddUnitLight00);
5183    tolua_function(tolua_S,"RemoveUnitLight",tolua__EffectModelScript_RemoveUnitLight00);
5184    tolua_function(tolua_S,"RemoveAllUnitsLightType",tolua__EffectModelScript_RemoveAllUnitsLightType00);
5185    tolua_function(tolua_S,"GetUnitLight",tolua__EffectModelScript_GetUnitLight00);
5186    tolua_function(tolua_S,"SetLightAmbientColour",tolua__EffectModelScript_SetLightAmbientColour00);
5187    tolua_function(tolua_S,"SetLightAmbientColour",tolua__EffectModelScript_SetLightAmbientColour01);
5188    tolua_function(tolua_S,"SetLightIntensity",tolua__EffectModelScript_SetLightIntensity00);
5189    tolua_function(tolua_S,"SetLightAttenuation",tolua__EffectModelScript_SetLightAttenuation00);
5190    tolua_function(tolua_S,"GetLightAmbientColour",tolua__EffectModelScript_GetLightAmbientColour00);
5191    tolua_function(tolua_S,"GetLightIntensity",tolua__EffectModelScript_GetLightIntensity00);
5192    tolua_function(tolua_S,"GetLightAttenuation",tolua__EffectModelScript_GetLightAttenuation00);
5193   tolua_endmodule(tolua_S);
5194   tolua_constant(tolua_S,"TYPE_UNIT_LIGHT_POINT",TYPE_UNIT_LIGHT_POINT);
5195   tolua_constant(tolua_S,"TYPE_UNIT_LIGHT_SPOT",TYPE_UNIT_LIGHT_SPOT);
5196   tolua_constant(tolua_S,"TYPE_UNIT_LIGHT_DIRECTIONAL",TYPE_UNIT_LIGHT_DIRECTIONAL);
5197   tolua_constant(tolua_S,"EFFECT_CONTINUED",EFFECT_CONTINUED);
5198   tolua_constant(tolua_S,"EFFECT_FINISHED",EFFECT_FINISHED);
5199   tolua_constant(tolua_S,"B_IS_FIXED",B_IS_FIXED);
5200   tolua_constant(tolua_S,"N_POS_X",N_POS_X);
5201   tolua_constant(tolua_S,"N_POS_Y",N_POS_Y);
5202   tolua_constant(tolua_S,"N_POS_Z",N_POS_Z);
5203   tolua_constant(tolua_S,"N_POS_X_INIT",N_POS_X_INIT);
5204   tolua_constant(tolua_S,"N_POS_Y_INIT",N_POS_Y_INIT);
5205   tolua_constant(tolua_S,"N_POS_Z_INIT",N_POS_Z_INIT);
5206   tolua_constant(tolua_S,"N_MASS",N_MASS);
5207   tolua_constant(tolua_S,"N_FUSER_X",N_FUSER_X);
5208   tolua_constant(tolua_S,"N_FUSER_Y",N_FUSER_Y);
5209   tolua_constant(tolua_S,"N_FUSER_Z",N_FUSER_Z);
5210   tolua_constant(tolua_S,"N_POINT_RESISTANCE",N_POINT_RESISTANCE);
5211   tolua_constant(tolua_S,"V_POS",V_POS);
5212   tolua_constant(tolua_S,"V_POS_INIT",V_POS_INIT);
5213   tolua_constant(tolua_S,"V_FUSER",V_FUSER);
5214   tolua_constant(tolua_S,"N_NURBS_WEIGHT",N_NURBS_WEIGHT);
5215   tolua_constant(tolua_S,"N_STIFFNESS",N_STIFFNESS);
5216   tolua_constant(tolua_S,"N_ENV_RESISTANCE",N_ENV_RESISTANCE);
5217   tolua_constant(tolua_S,"N_NUMBER_ITERATIONS",N_NUMBER_ITERATIONS);
5218   tolua_constant(tolua_S,"N_MODEL_SPEED",N_MODEL_SPEED);
5219   tolua_constant(tolua_S,"N_GRAVITY_ACCEL_VALUE",N_GRAVITY_ACCEL_VALUE);
5220   tolua_constant(tolua_S,"V_GRAVITY_ACCELERATION",V_GRAVITY_ACCELERATION);
5221   tolua_constant(tolua_S,"N_TRANSPARENCY",N_TRANSPARENCY);
5222   tolua_constant(tolua_S,"N_EFFECT_TIME_PASSED",N_EFFECT_TIME_PASSED);
5223   tolua_constant(tolua_S,"N_EFFECT_DURATION",N_EFFECT_DURATION);
5224   tolua_constant(tolua_S,"ALL_POINTS",ALL_POINTS);
5225   tolua_constant(tolua_S,"ALL_SPRINGS",ALL_SPRINGS);
5226   tolua_constant(tolua_S,"ALL_RODS",ALL_RODS);
5227   tolua_constant(tolua_S,"AXIS_X",AXIS_X);
5228   tolua_constant(tolua_S,"AXIS_Y",AXIS_Y);
5229   tolua_constant(tolua_S,"AXIS_Z",AXIS_Z);
5230   tolua_constant(tolua_S,"AXIS_ARBITRARY",AXIS_ARBITRARY);
5231   tolua_constant(tolua_S,"POINT_LEFT_TOP",POINT_LEFT_TOP);
5232   tolua_constant(tolua_S,"POINT_CENTER_TOP",POINT_CENTER_TOP);
5233   tolua_constant(tolua_S,"POINT_RIGHT_TOP",POINT_RIGHT_TOP);
5234   tolua_constant(tolua_S,"POINT_LEFT_CENTER",POINT_LEFT_CENTER);
5235   tolua_constant(tolua_S,"POINT_CENTER_CENTER",POINT_CENTER_CENTER);
5236   tolua_constant(tolua_S,"POINT_RIGHT_CENTER",POINT_RIGHT_CENTER);
5237   tolua_constant(tolua_S,"POINT_LEFT_BOTTOM",POINT_LEFT_BOTTOM);
5238   tolua_constant(tolua_S,"POINT_CENTER_BOTTOM",POINT_CENTER_BOTTOM);
5239   tolua_constant(tolua_S,"POINT_RIGHT_BOTTOM",POINT_RIGHT_BOTTOM);
5240   tolua_constant(tolua_S,"POINT_ARBITRARY",POINT_ARBITRARY);
5241   tolua_cclass(tolua_S,"TouchEventScript","TouchEventScript","",NULL);
5242   tolua_beginmodule(tolua_S,"TouchEventScript");
5243    tolua_variable(tolua_S,"currentPosition",tolua_get_TouchEventScript_currentPosition,tolua_set_TouchEventScript_currentPosition);
5244    tolua_variable(tolua_S,"startPosition",tolua_get_TouchEventScript_startPosition,tolua_set_TouchEventScript_startPosition);
5245    tolua_variable(tolua_S,"touchId",tolua_get_TouchEventScript_unsigned_touchId,tolua_set_TouchEventScript_unsigned_touchId);
5246   tolua_endmodule(tolua_S);
5247   #ifdef __cplusplus
5248   tolua_cclass(tolua_S,"PropertyCast","PropertyCast","",tolua_collect_PropertyCast);
5249   #else
5250   tolua_cclass(tolua_S,"PropertyCast","PropertyCast","",NULL);
5251   #endif
5252   tolua_beginmodule(tolua_S,"PropertyCast");
5253    tolua_constant(tolua_S,"NO_PROPERTY",PropertyCast::NO_PROPERTY);
5254    tolua_constant(tolua_S,"NUMBER",PropertyCast::NUMBER);
5255    tolua_constant(tolua_S,"BOOL",PropertyCast::BOOL);
5256    tolua_constant(tolua_S,"VEC3",PropertyCast::VEC3);
5257    tolua_constant(tolua_S,"VECTOR_VECTOR",PropertyCast::VECTOR_VECTOR);
5258    tolua_constant(tolua_S,"POINT_LIGHT",PropertyCast::POINT_LIGHT);
5259    tolua_constant(tolua_S,"SPOT_LIGHT",PropertyCast::SPOT_LIGHT);
5260    tolua_constant(tolua_S,"DIRECTIONAL_LIGHT",PropertyCast::DIRECTIONAL_LIGHT);
5261    tolua_variable(tolua_S,"type",tolua_get_PropertyCast_type,NULL);
5262    tolua_cclass(tolua_S,"TypeValue","PropertyCast::TypeValue","",NULL);
5263    tolua_beginmodule(tolua_S,"TypeValue");
5264     tolua_variable(tolua_S,"numberValue",tolua_get_PropertyCast__TypeValue_numberValue,tolua_set_PropertyCast__TypeValue_numberValue);
5265     tolua_variable(tolua_S,"boolValue",tolua_get_PropertyCast__TypeValue_boolValue,tolua_set_PropertyCast__TypeValue_boolValue);
5266     tolua_variable(tolua_S,"vec3Value",tolua_get_PropertyCast__TypeValue_vec3Value_ptr,NULL);
5267     tolua_variable(tolua_S,"vecVecValue",tolua_get_PropertyCast__TypeValue_vecVecValue_ptr,NULL);
5268     tolua_variable(tolua_S,"pPointLight",tolua_get_PropertyCast__TypeValue_pPointLight_ptr,tolua_set_PropertyCast__TypeValue_pPointLight_ptr);
5269     tolua_variable(tolua_S,"pSpotLight",tolua_get_PropertyCast__TypeValue_pSpotLight_ptr,tolua_set_PropertyCast__TypeValue_pSpotLight_ptr);
5270     tolua_variable(tolua_S,"pDirectionalLight",tolua_get_PropertyCast__TypeValue_pDirectionalLight_ptr,tolua_set_PropertyCast__TypeValue_pDirectionalLight_ptr);
5271    tolua_endmodule(tolua_S);
5272    tolua_variable(tolua_S,"value",tolua_get_PropertyCast_value,tolua_set_PropertyCast_value);
5273   tolua_endmodule(tolua_S);
5274   tolua_cclass(tolua_S,"UnitLight","UnitLight","",NULL);
5275   tolua_beginmodule(tolua_S,"UnitLight");
5276    tolua_function(tolua_S,"GetEnabled",tolua__UnitLight_GetEnabled00);
5277    tolua_function(tolua_S,"GetColour",tolua__UnitLight_GetColour00);
5278    tolua_function(tolua_S,"GetIntensity",tolua__UnitLight_GetIntensity00);
5279    tolua_function(tolua_S,"GetName",tolua__UnitLight_GetName00);
5280    tolua_function(tolua_S,"SetEnabled",tolua__UnitLight_SetEnabled00);
5281    tolua_function(tolua_S,"SetColour",tolua__UnitLight_SetColour00);
5282    tolua_function(tolua_S,"SetColour",tolua__UnitLight_SetColour01);
5283    tolua_function(tolua_S,"SetIntensity",tolua__UnitLight_SetIntensity00);
5284   tolua_endmodule(tolua_S);
5285   tolua_cclass(tolua_S,"PointLight","PointLight","UnitLight",NULL);
5286   tolua_beginmodule(tolua_S,"PointLight");
5287    tolua_function(tolua_S,"CreatePointLight",tolua__PointLight_CreatePointLight00);
5288    tolua_function(tolua_S,"GetPosition",tolua__PointLight_GetPosition00);
5289    tolua_function(tolua_S,"SetPosition",tolua__PointLight_SetPosition00);
5290    tolua_function(tolua_S,"SetPosition",tolua__PointLight_SetPosition01);
5291   tolua_endmodule(tolua_S);
5292   tolua_cclass(tolua_S,"SpotLight","SpotLight","PointLight",NULL);
5293   tolua_beginmodule(tolua_S,"SpotLight");
5294    tolua_function(tolua_S,"CreateSpotLight",tolua__SpotLight_CreateSpotLight00);
5295    tolua_function(tolua_S,"GetTarget",tolua__SpotLight_GetTarget00);
5296    tolua_function(tolua_S,"GetAngleOpening",tolua__SpotLight_GetAngleOpening00);
5297    tolua_function(tolua_S,"GetAngleFadeOut",tolua__SpotLight_GetAngleFadeOut00);
5298    tolua_function(tolua_S,"SetTarget",tolua__SpotLight_SetTarget00);
5299    tolua_function(tolua_S,"SetTarget",tolua__SpotLight_SetTarget01);
5300    tolua_function(tolua_S,"SetAngleOpening",tolua__SpotLight_SetAngleOpening00);
5301    tolua_function(tolua_S,"SetAngleFadeOut",tolua__SpotLight_SetAngleFadeOut00);
5302   tolua_endmodule(tolua_S);
5303   tolua_cclass(tolua_S,"DirectionalLight","DirectionalLight","UnitLight",NULL);
5304   tolua_beginmodule(tolua_S,"DirectionalLight");
5305    tolua_function(tolua_S,"CreateDirectionalLight",tolua__DirectionalLight_CreateDirectionalLight00);
5306    tolua_function(tolua_S,"GetDirection",tolua__DirectionalLight_GetDirection00);
5307    tolua_function(tolua_S,"SetDirection",tolua__DirectionalLight_SetDirection00);
5308    tolua_function(tolua_S,"SetDirection",tolua__DirectionalLight_SetDirection01);
5309   tolua_endmodule(tolua_S);
5310   #ifdef __cplusplus
5311   tolua_cclass(tolua_S,"Vector3","Vector3","",tolua_collect_Vector3);
5312   #else
5313   tolua_cclass(tolua_S,"Vector3","Vector3","",NULL);
5314   #endif
5315   tolua_beginmodule(tolua_S,"Vector3");
5316    tolua_variable(tolua_S,"x",tolua_get_Vector3_x,tolua_set_Vector3_x);
5317    tolua_variable(tolua_S,"y",tolua_get_Vector3_y,tolua_set_Vector3_y);
5318    tolua_variable(tolua_S,"z",tolua_get_Vector3_z,tolua_set_Vector3_z);
5319    tolua_function(tolua_S,"new",tolua__Vector3_new00);
5320    tolua_function(tolua_S,"new_local",tolua__Vector3_new00_local);
5321    tolua_function(tolua_S,".call",tolua__Vector3_new00_local);
5322    tolua_function(tolua_S,"new",tolua__Vector3_new01);
5323    tolua_function(tolua_S,"new_local",tolua__Vector3_new01_local);
5324    tolua_function(tolua_S,".call",tolua__Vector3_new01_local);
5325    tolua_function(tolua_S,"new",tolua__Vector3_new02);
5326    tolua_function(tolua_S,"new_local",tolua__Vector3_new02_local);
5327    tolua_function(tolua_S,".call",tolua__Vector3_new02_local);
5328    tolua_function(tolua_S,"delete",tolua__Vector3_delete00);
5329    tolua_function(tolua_S,".sub",tolua__Vector3__sub00);
5330    SetMetatable(tolua_S, "Vector3", "__add",tolua__Vector3__add00);
5331    SetMetatable(tolua_S, "Vector3", "__add",tolua__Vector3__add01);
5332    tolua_function(tolua_S,".sub",tolua__Vector3__sub01);
5333    tolua_function(tolua_S,".sub",tolua__Vector3__sub02);
5334    SetMetatable(tolua_S, "Vector3", "__mul",tolua__Vector3__mul00);
5335    SetMetatable(tolua_S, "Vector3", "__mul",tolua__Vector3__mul01);
5336    tolua_function(tolua_S,".div",tolua__Vector3__div00);
5337    tolua_function(tolua_S,".div",tolua__Vector3__div01);
5338    tolua_function(tolua_S,".eq",tolua__Vector3__eq00);
5339    tolua_function(tolua_S,"GetCrossVector3",tolua__Vector3_GetCrossVector300);
5340    tolua_function(tolua_S,"GetNormalizedVector3",tolua__Vector3_GetNormalizedVector300);
5341   tolua_endmodule(tolua_S);
5342   #ifdef __cplusplus
5343   tolua_cclass(tolua_S,"Vector2","Vector2","",tolua_collect_Vector2);
5344   #else
5345   tolua_cclass(tolua_S,"Vector2","Vector2","",NULL);
5346   #endif
5347   tolua_beginmodule(tolua_S,"Vector2");
5348    tolua_variable(tolua_S,"x",tolua_get_Vector2_x,tolua_set_Vector2_x);
5349    tolua_variable(tolua_S,"y",tolua_get_Vector2_y,tolua_set_Vector2_y);
5350    tolua_function(tolua_S,"new",tolua__Vector2_new00);
5351    tolua_function(tolua_S,"new_local",tolua__Vector2_new00_local);
5352    tolua_function(tolua_S,".call",tolua__Vector2_new00_local);
5353    tolua_function(tolua_S,"new",tolua__Vector2_new01);
5354    tolua_function(tolua_S,"new_local",tolua__Vector2_new01_local);
5355    tolua_function(tolua_S,".call",tolua__Vector2_new01_local);
5356    tolua_function(tolua_S,"new",tolua__Vector2_new02);
5357    tolua_function(tolua_S,"new_local",tolua__Vector2_new02_local);
5358    tolua_function(tolua_S,".call",tolua__Vector2_new02_local);
5359    tolua_function(tolua_S,"delete",tolua__Vector2_delete00);
5360    tolua_function(tolua_S,".sub",tolua__Vector2__sub00);
5361    SetMetatable(tolua_S, "Vector2", "__add",tolua__Vector2__add00);
5362    SetMetatable(tolua_S, "Vector2", "__add",tolua__Vector2__add01);
5363    tolua_function(tolua_S,".sub",tolua__Vector2__sub01);
5364    tolua_function(tolua_S,".sub",tolua__Vector2__sub02);
5365    SetMetatable(tolua_S, "Vector2", "__mul",tolua__Vector2__mul00);
5366    SetMetatable(tolua_S, "Vector2", "__mul",tolua__Vector2__mul01);
5367    tolua_function(tolua_S,".div",tolua__Vector2__div00);
5368    tolua_function(tolua_S,".div",tolua__Vector2__div01);
5369    tolua_function(tolua_S,".eq",tolua__Vector2__eq00);
5370   tolua_endmodule(tolua_S);
5371   tolua_cclass(tolua_S,"EffectsVector_EffectsVector_long___","EffectsVector<EffectsVector<long> >","",NULL);
5372   tolua_beginmodule(tolua_S,"EffectsVector_EffectsVector_long___");
5373    tolua_function(tolua_S,"GetSize",tolua__EffectsVector_EffectsVector_long____GetSize00);
5374    tolua_function(tolua_S,".geti",tolua__EffectsVector_EffectsVector_long_____geti00);
5375   tolua_endmodule(tolua_S);
5376   #ifdef __cplusplus
5377   tolua_cclass(tolua_S,"EffectsVector_long_","EffectsVector<long>","",tolua_collect_EffectsVector_long_);
5378   #else
5379   tolua_cclass(tolua_S,"EffectsVector_long_","EffectsVector<long>","",NULL);
5380   #endif
5381   tolua_beginmodule(tolua_S,"EffectsVector_long_");
5382    tolua_function(tolua_S,"GetSize",tolua__EffectsVector_long__GetSize00);
5383    tolua_function(tolua_S,".geti",tolua__EffectsVector_long___geti00);
5384   tolua_endmodule(tolua_S);
5385   tolua_cclass(tolua_S,"EffectsVector_float_","EffectsVector<float>","",NULL);
5386   tolua_beginmodule(tolua_S,"EffectsVector_float_");
5387    tolua_function(tolua_S,"GetSize",tolua__EffectsVector_float__GetSize00);
5388    tolua_function(tolua_S,".geti",tolua__EffectsVector_float___geti00);
5389   tolua_endmodule(tolua_S);
5390   #ifdef __cplusplus
5391   tolua_cclass(tolua_S,"LuaMatrix4","LuaMatrix4","",tolua_collect_LuaMatrix4);
5392   #else
5393   tolua_cclass(tolua_S,"LuaMatrix4","LuaMatrix4","",NULL);
5394   #endif
5395   tolua_beginmodule(tolua_S,"LuaMatrix4");
5396    tolua_function(tolua_S,"new",tolua__LuaMatrix4_new00);
5397    tolua_function(tolua_S,"new_local",tolua__LuaMatrix4_new00_local);
5398    tolua_function(tolua_S,".call",tolua__LuaMatrix4_new00_local);
5399    tolua_function(tolua_S,"new",tolua__LuaMatrix4_new01);
5400    tolua_function(tolua_S,"new_local",tolua__LuaMatrix4_new01_local);
5401    tolua_function(tolua_S,".call",tolua__LuaMatrix4_new01_local);
5402    tolua_function(tolua_S,"new",tolua__LuaMatrix4_new02);
5403    tolua_function(tolua_S,"new_local",tolua__LuaMatrix4_new02_local);
5404    tolua_function(tolua_S,".call",tolua__LuaMatrix4_new02_local);
5405    tolua_function(tolua_S,"new",tolua__LuaMatrix4_new03);
5406    tolua_function(tolua_S,"new_local",tolua__LuaMatrix4_new03_local);
5407    tolua_function(tolua_S,".call",tolua__LuaMatrix4_new03_local);
5408    tolua_function(tolua_S,"SetIdentity",tolua__LuaMatrix4_SetIdentity00);
5409    tolua_function(tolua_S,"Translate",tolua__LuaMatrix4_Translate00);
5410    tolua_function(tolua_S,"Scale",tolua__LuaMatrix4_Scale00);
5411    tolua_function(tolua_S,"Scale",tolua__LuaMatrix4_Scale01);
5412    tolua_function(tolua_S,"RotateAroundAxisZ",tolua__LuaMatrix4_RotateAroundAxisZ00);
5413    tolua_function(tolua_S,"RotateAroundAxisZ",tolua__LuaMatrix4_RotateAroundAxisZ01);
5414    tolua_function(tolua_S,"RotateAroundAxisX",tolua__LuaMatrix4_RotateAroundAxisX00);
5415    tolua_function(tolua_S,"RotateAroundAxisX",tolua__LuaMatrix4_RotateAroundAxisX01);
5416    tolua_function(tolua_S,"RotateAroundAxisY",tolua__LuaMatrix4_RotateAroundAxisY00);
5417    tolua_function(tolua_S,"RotateAroundAxisY",tolua__LuaMatrix4_RotateAroundAxisY01);
5418    tolua_function(tolua_S,"RotateAroundAxisArbitrary",tolua__LuaMatrix4_RotateAroundAxisArbitrary00);
5419    tolua_function(tolua_S,"RotateAroundAxisArbitrary",tolua__LuaMatrix4_RotateAroundAxisArbitrary01);
5420    SetMetatable(tolua_S, "LuaMatrix4", "__mul",tolua__LuaMatrix4__mul00);
5421    SetMetatable(tolua_S, "LuaMatrix4", "__mul",tolua__LuaMatrix4__mul01);
5422    SetMetatable(tolua_S, "LuaMatrix4", "__add",tolua__LuaMatrix4__add00);
5423    tolua_function(tolua_S,".sub",tolua__LuaMatrix4__sub00);
5424    tolua_function(tolua_S,".sub",tolua__LuaMatrix4__sub01);
5425   tolua_endmodule(tolua_S);
5426
5427   { /* begin embedded lua code */
5428    int top = lua_gettop(tolua_S);
5429    static const unsigned char B[] = {
5430     10,102,117,110, 99,116,105,111,110, 32, 71,101,116, 80,114,
5431     111,112,101,114,116,121, 40,101,108,101,109,101,110,116, 73,
5432      68, 44, 32,112,114,111,112,101,114,116,121, 41, 13, 10,105,
5433     102, 32,116,121,112,101, 40,101,108,101,109,101,110,116, 73,
5434      68, 41, 32,126, 61, 32, 39,110,117,109, 98,101,114, 39, 32,
5435     116,104,101,110, 13, 10,101,114,114,111,114, 40, 39, 70,105,
5436     114,115,116, 32, 97,114,103,117,109,101,110,116, 32,102,111,
5437     114, 32, 71,101,116, 80,114,111,112,101,114,116,121, 32,109,
5438     117,115,116, 32,104, 97,118,101, 32,116,121,112,101, 32,110,
5439     117,109, 98,101,114, 32, 40,101,108,101,109,101,110,116, 32,
5440      73, 68, 41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,
5441     105,102, 32,116,121,112,101, 40,112,114,111,112,101,114,116,
5442     121, 41, 32,126, 61, 32, 39,110,117,109, 98,101,114, 39, 32,
5443     116,104,101,110, 13, 10,101,114,114,111,114, 40, 39, 83,101,
5444      99,111,110,100, 32, 97,114,103,117,109,101,110,116, 32,102,
5445     111,114, 32, 71,101,116, 80,114,111,112,101,114,116,121, 32,
5446     109,117,115,116, 32,104, 97,118,101, 32,116,121,112,101, 32,
5447     110,117,109, 98,101,114, 32, 40, 78, 95, 46, 46, 46, 32,111,
5448     114, 32, 86, 95, 46, 46, 46, 32,111,114, 32, 66, 95, 46, 46,
5449      46, 41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,108,
5450     111, 99, 97,108, 32,114,101,115, 32, 61, 32,115, 99,101,110,
5451     101, 58, 71,101,116, 80,114,111,112,101,114,116,121, 40,101,
5452     108,101,109,101,110,116, 73, 68, 44, 32,112,114,111,112,101,
5453     114,116,121, 41, 32, 13, 10,105,102, 32,114,101,115, 46,116,
5454     121,112,101, 32, 61, 61, 32, 80,114,111,112,101,114,116,121,
5455      67, 97,115,116, 46, 78, 85, 77, 66, 69, 82, 32,116,104,101,
5456     110, 13, 10,114,101,116,117,114,110, 32,114,101,115, 46,118,
5457      97,108,117,101, 46,110,117,109, 98,101,114, 86, 97,108,117,
5458     101, 13, 10,101,108,115,101,105,102, 32,114,101,115, 46,116,
5459     121,112,101, 32, 61, 61, 32, 80,114,111,112,101,114,116,121,
5460      67, 97,115,116, 46, 66, 79, 79, 76, 32,116,104,101,110, 13,
5461      10,114,101,116,117,114,110, 32,114,101,115, 46,118, 97,108,
5462     117,101, 46, 98,111,111,108, 86, 97,108,117,101, 13, 10,101,
5463     108,115,101,105,102, 32,114,101,115, 46,116,121,112,101, 32,
5464      61, 61, 32, 80,114,111,112,101,114,116,121, 67, 97,115,116,
5465      46, 86, 69, 67, 51, 32,116,104,101,110, 13, 10,114,101,116,
5466     117,114,110, 32,114,101,115, 46,118, 97,108,117,101, 46,118,
5467     101, 99, 51, 86, 97,108,117,101, 13, 10,101,108,115,101, 32,
5468      13, 10,101,114,114,111,114, 40, 39, 69,114,114,111,114, 32,
5469     105,110, 32,102,117,110, 99,116,105,111,110, 32, 71,101,116,
5470      80,114,111,112,101,114,116,121, 58, 32,116,104,101,114,101,
5471      32,105,115, 32,110,111, 32,115,112,101, 99,105,102,105,101,
5472     100, 32,112,114,111,112,101,114,116,121, 39, 44, 32, 50, 41,
5473      13, 10,101,110,100, 13, 10,101,110,100, 13, 10,102,117,110,
5474      99,116,105,111,110, 32, 83,101,116, 80,114,111,112,101,114,
5475     116,121, 40,101,108,101,109,101,110,116, 73, 68, 44, 32,112,
5476     114,111,112,101,114,116,121, 44, 32,118, 97,108,117,101, 41,
5477      13, 10,105,102, 32,116,121,112,101, 40,101,108,101,109,101,
5478     110,116, 73, 68, 41, 32,126, 61, 32, 39,110,117,109, 98,101,
5479     114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,114, 40,
5480      39, 70,105,114,115,116, 32, 97,114,103,117,109,101,110,116,
5481      32,102,111,114, 32, 83,101,116, 80,114,111,112,101,114,116,
5482     121, 32,109,117,115,116, 32,104, 97,118,101, 32,116,121,112,
5483     101, 32,110,117,109, 98,101,114, 32, 40,101,108,101,109,101,
5484     110,116, 32, 73, 68, 41, 39, 44, 32, 50, 41, 13, 10,101,110,
5485     100, 13, 10,105,102, 32,116,121,112,101, 40,112,114,111,112,
5486     101,114,116,121, 41, 32,126, 61, 32, 39,110,117,109, 98,101,
5487     114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,114, 40,
5488      39, 83,101, 99,111,110,100, 32, 97,114,103,117,109,101,110,
5489     116, 32,102,111,114, 32, 83,101,116, 80,114,111,112,101,114,
5490     116,121, 32,109,117,115,116, 32,104, 97,118,101, 32,116,121,
5491     112,101, 32,110,117,109, 98,101,114, 32, 40, 78, 95, 46, 46,
5492      46, 32,111,114, 32, 86, 95, 46, 46, 46, 32,111,114, 32, 66,
5493      95, 46, 46, 46, 41, 39, 44, 32, 50, 41, 13, 10,101,110,100,
5494      13, 10,108,111, 99, 97,108, 32,118, 97,108,117,101, 84,121,
5495     112,101, 32, 61, 32,116,111,108,117, 97, 46,116,121,112,101,
5496      40,118, 97,108,117,101, 41, 13, 10,105,102, 32,118, 97,108,
5497     117,101, 84,121,112,101, 32,126, 61, 32, 39,110,117,109, 98,
5498     101,114, 39, 32, 97,110,100, 32,118, 97,108,117,101, 84,121,
5499     112,101, 32,126, 61, 32, 39, 98,111,111,108,101, 97,110, 39,
5500      32, 97,110,100, 32,118, 97,108,117,101, 84,121,112,101, 32,
5501     126, 61, 32, 39, 86,101, 99,116,111,114, 51, 39, 32, 97,110,
5502     100, 32,118, 97,108,117,101, 84,121,112,101, 32,126, 61, 32,
5503      39, 99,111,110,115,116, 32, 86,101, 99,116,111,114, 51, 39,
5504      32,116,104,101,110, 13, 10,101,114,114,111,114, 40, 39, 84,
5505     104,105,114,100, 32, 97,114,103,117,109,101,110,116, 32,102,
5506     111,114, 32, 83,101,116, 80,114,111,112,101,114,116,121, 32,
5507     109,117,115,116, 32,104, 97,118,101, 32,111,110,101, 32,111,
5508     102, 32,116,104,101, 32,116,121,112,101,115, 58, 32,110,117,
5509     109, 98,101,114, 44, 32, 98,111,111,108,101, 97,110, 44, 32,
5510      86,101, 99,116,111,114, 51, 44, 32, 99,111,110,115,116, 32,
5511      86,101, 99,116,111,114, 51, 32, 40, 97, 32,118, 97,108,117,
5512     101, 32,102,111,114, 32,115,112,101, 99,105,102,105,101,100,
5513      32,112,114,111,112,101,114,116,121, 41, 39, 44, 32, 50, 41,
5514      13, 10,101,110,100, 13, 10,108,111, 99, 97,108, 32,114,101,
5515     115, 32, 61, 32,115, 99,101,110,101, 58, 83,101,116, 80,114,
5516     111,112,101,114,116,121, 40,101,108,101,109,101,110,116, 73,
5517      68, 44, 32,112,114,111,112,101,114,116,121, 44, 32,118, 97,
5518     108,117,101, 41, 13, 10,105,102, 32,114,101,115, 32, 61, 61,
5519      32,102, 97,108,115,101, 32,116,104,101,110, 13, 10,101,114,
5520     114,111,114, 40, 39, 69,114,114,111,114, 32,105,110, 32,102,
5521     117,110, 99,116,105,111,110, 32, 83,101,116, 80,114,111,112,
5522     101,114,116,121, 58, 32,115,112,101, 99,105,102,105,101,100,
5523      32,112,114,111,112,101,114,116,121, 32,119, 97,115, 32,110,
5524     111,116, 32,115,101,116, 39, 44, 32, 50, 41, 13, 10,101,110,
5525     100, 13, 10,101,110,100, 13, 10,102,117,110, 99,116,105,111,
5526     110, 32, 83,101,116, 80,114,111,112,101,114,116,121, 71,114,
5527     111,117,112, 40, 77,111,100,101,108, 83,117,114,102, 97, 99,
5528     101, 73, 68, 44, 32,103,114,111,117,112, 44, 32,112,114,111,
5529     112,101,114,116,121, 44, 32,118, 97,108,117,101, 41, 13, 10,
5530     105,102, 32,116,121,112,101, 40, 77,111,100,101,108, 83,117,
5531     114,102, 97, 99,101, 73, 68, 41, 32,126, 61, 32, 39,110,117,
5532     109, 98,101,114, 39, 32,116,104,101,110, 13, 10,101,114,114,
5533     111,114, 40, 39, 70,105,114,115,116, 32, 97,114,103,117,109,
5534     101,110,116, 32,102,111,114, 32, 83,101,116, 80,114,111,112,
5535     101,114,116,121, 71,114,111,117,112, 32,109,117,115,116, 32,
5536     104, 97,118,101, 32,116,121,112,101, 32,110,117,109, 98,101,
5537     114, 32, 40, 73, 68, 32,102,111,114, 32,109,111,100,101,108,
5538      32,115,117,114,102, 97, 99,101, 41, 39, 44, 32, 50, 41, 13,
5539      10,101,110,100, 13, 10,105,102, 32,116,121,112,101, 40,103,
5540     114,111,117,112, 41, 32,126, 61, 32, 39,110,117,109, 98,101,
5541     114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,114, 40,
5542      39, 83,101, 99,111,110,100, 32, 97,114,103,117,109,101,110,
5543     116, 32,102,111,114, 32, 83,101,116, 80,114,111,112,101,114,
5544     116,121, 71,114,111,117,112, 32,109,117,115,116, 32,104, 97,
5545     118,101, 32,116,121,112,101, 32,110,117,109, 98,101,114, 32,
5546      40,102,111,114, 32,101,120, 97,109,112,108,101, 32, 65, 76,
5547      76, 95, 80, 79, 73, 78, 84, 83, 41, 39, 44, 32, 50, 41, 13,
5548      10,101,110,100, 13, 10,105,102, 32,116,121,112,101, 40,112,
5549     114,111,112,101,114,116,121, 41, 32,126, 61, 32, 39,110,117,
5550     109, 98,101,114, 39, 32,116,104,101,110, 13, 10,101,114,114,
5551     111,114, 40, 39, 84,104,105,114,100, 32, 97,114,103,117,109,
5552     101,110,116, 32,102,111,114, 32, 83,101,116, 80,114,111,112,
5553     101,114,116,121, 71,114,111,117,112, 32,109,117,115,116, 32,
5554     104, 97,118,101, 32,116,121,112,101, 32,110,117,109, 98,101,
5555     114, 32, 40, 78, 95, 46, 46, 46, 41, 39, 44, 32, 50, 41, 13,
5556      10,101,110,100, 13, 10,105,102, 32,116,121,112,101, 40,118,
5557      97,108,117,101, 41, 32,126, 61, 32, 39,110,117,109, 98,101,
5558     114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,114, 40,
5559      39, 70,111,117,114,116,104, 32, 97,114,103,117,109,101,110,
5560     116, 32,102,111,114, 32, 83,101,116, 80,114,111,112,101,114,
5561     116,121, 71,114,111,117,112, 32,109,117,115,116, 32,104, 97,
5562     118,101, 32,116,121,112,101, 32,110,117,109, 98,101,114, 32,
5563      40, 97, 32,118, 97,108,117,101, 32,102,111,114, 32,115,112,
5564     101, 99,105,102,105,101,100, 32,112,114,111,112,101,114,116,
5565     121, 41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,108,
5566     111, 99, 97,108, 32,114,101,115, 32, 61, 32,115, 99,101,110,
5567     101, 58, 83,101,116, 80,114,111,112,101,114,116,121, 71,114,
5568     111,117,112, 40, 77,111,100,101,108, 83,117,114,102, 97, 99,
5569     101, 73, 68, 44, 32,103,114,111,117,112, 44, 32,112,114,111,
5570     112,101,114,116,121, 44, 32,118, 97,108,117,101, 41, 32, 13,
5571      10,105,102, 32,114,101,115, 32, 61, 61, 32,102, 97,108,115,
5572     101, 32,116,104,101,110, 13, 10,101,114,114,111,114, 40, 39,
5573      69,114,114,111,114, 32,105,110, 32,102,117,110, 99,116,105,
5574     111,110, 32, 83,101,116, 80,114,111,112,101,114,116,121, 71,
5575     114,111,117,112, 58, 32,115,112,101, 99,105,102,105,101,100,
5576      32,112,114,111,112,101,114,116,121, 32,119, 97,115, 32,110,
5577     111,116, 32,115,101,116, 39, 44, 32, 50, 41, 13, 10,101,110,
5578     100, 13, 10,101,110,100, 13, 10, 45, 45, 45, 45, 45, 45, 45,
5579      45, 45, 45, 45, 45,32
5580    };
5581    tolua_dobuffer(tolua_S,(char*)B,sizeof(B),"tolua embedded: ./SetGetProperty.lua");
5582    lua_settop(tolua_S, top);
5583   } /* end of embedded lua code */
5584
5585
5586   { /* begin embedded lua code */
5587    int top = lua_gettop(tolua_S);
5588    static const unsigned char B[] = {
5589     10,102,117,110, 99,116,105,111,110, 32, 77,111,118,101, 83,
5590     117,114,102, 97, 99,101, 40, 71,114, 97,112,104,105, 99, 97,
5591     108, 83,117,114,102, 97, 99,101, 73, 68, 44, 32, 88, 48, 44,
5592      32, 89, 48, 44, 32, 90, 48, 41, 13, 10,105,102, 32,116,121,
5593     112,101, 40, 71,114, 97,112,104,105, 99, 97,108, 83,117,114,
5594     102, 97, 99,101, 73, 68, 41, 32,126, 61, 32, 39,110,117,109,
5595      98,101,114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,
5596     114, 40, 39, 70,105,114,115,116, 32, 97,114,103,117,109,101,
5597     110,116, 32,102,111,114, 32, 77,111,118,101, 83,117,114,102,
5598      97, 99,101, 32,109,117,115,116, 32,104, 97,118,101, 32,116,
5599     121,112,101, 32,110,117,109, 98,101,114, 32, 40, 73, 68, 32,
5600     102,111,114, 32,103,114, 97,112,104,105, 99, 97,108, 32,115,
5601     117,114,102, 97, 99,101, 41, 39, 44, 32, 50, 41, 13, 10,101,
5602     110,100, 13, 10,108,111, 99, 97,108, 32,114,101,115, 32, 61,
5603      32,102, 97,108,115,101, 13, 10,108,111, 99, 97,108, 32,116,
5604     121,112,101, 88, 48, 32, 61, 32,116,111,108,117, 97, 46,116,
5605     121,112,101, 40, 88, 48, 41, 13, 10,105,102, 32, 40,116,121,
5606     112,101, 88, 48, 32, 61, 61, 32, 39, 86,101, 99,116,111,114,
5607      51, 39, 32,111,114, 32,116,121,112,101, 88, 48, 32, 61, 61,
5608      32, 39, 99,111,110,115,116, 32, 86,101, 99,116,111,114, 51,
5609      39, 41, 32, 97,110,100, 32, 89, 48, 32, 61, 61, 32,110,105,
5610     108, 32, 97,110,100, 32, 90, 48, 32, 61, 61, 32,110,105,108,
5611      32,116,104,101,110, 32, 13, 10,114,101,115, 32, 61, 32,115,
5612      99,101,110,101, 58, 77,111,118,101, 83,117,114,102, 97, 99,
5613     101, 40, 71,114, 97,112,104,105, 99, 97,108, 83,117,114,102,
5614      97, 99,101, 73, 68, 44, 32, 88, 48, 41, 13, 10,101,108,115,
5615     101,105,102, 32,116,121,112,101, 88, 48, 32, 61, 61, 32, 39,
5616     110,117,109, 98,101,114, 39, 32, 97,110,100, 32,116,121,112,
5617     101, 40, 89, 48, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,
5618     114, 39, 32, 97,110,100, 32,116,121,112,101, 40, 90, 48, 41,
5619      32, 61, 61, 32, 39,110,117,109, 98,101,114, 39, 32,116,104,
5620     101,110, 13, 10,114,101,115, 32, 61, 32,115, 99,101,110,101,
5621      58, 77,111,118,101, 83,117,114,102, 97, 99,101, 40, 71,114,
5622      97,112,104,105, 99, 97,108, 83,117,114,102, 97, 99,101, 73,
5623      68, 44, 32, 88, 48, 44, 32, 89, 48, 44, 32, 90, 48, 41, 13,
5624      10,101,108,115,101, 13, 10,101,114,114,111,114, 40, 39, 83,
5625     101, 99,111,110,100, 32, 97,114,103,117,109,101,110,116, 32,
5626     102,111,114, 32, 77,111,118,101, 83,117,114,102, 97, 99,101,
5627      32,109,117,115,116, 32,104, 97,118,101, 32,116,121,112,101,
5628      32, 86,101, 99,116,111,114, 51, 32,111,114, 32,115,101, 99,
5629     111,110,100, 44, 32,116,104,105,114,100, 32, 97,110,100, 32,
5630     102,111,117,114,116,104, 32, 97,114,103,117,109,101,110,116,
5631     115, 32,109,117,115,116, 32,104, 97,118,101, 32,116,121,112,
5632     101, 32,110,117,109, 98,101,114, 39, 44, 32, 50, 41, 13, 10,
5633     101,110,100, 13, 10,105,102, 32,114,101,115, 32, 61, 61, 32,
5634     102, 97,108,115,101, 32,116,104,101,110, 13, 10,101,114,114,
5635     111,114, 40, 39, 69,114,114,111,114, 32,105,110, 32,102,117,
5636     110, 99,116,105,111,110, 32, 77,111,118,101, 83,117,114,102,
5637      97, 99,101, 32, 40,109, 97,121, 98,101, 32,121,111,117, 32,
5638     104, 97,118,101, 32,115,112,101, 99,105,102,105,101,100, 32,
5639     119,114,111,110,103, 32,105,100, 41, 39, 44, 32, 50, 41, 13,
5640      10,101,110,100, 13, 10,101,110,100, 13, 10,102,117,110, 99,
5641     116,105,111,110, 32, 82,111,116, 97,116,101, 83,117,114,102,
5642      97, 99,101, 40, 71,114, 97,112,104,105, 99, 97,108, 83,117,
5643     114,102, 97, 99,101, 73, 68, 44, 32, 65,110,103,108,101, 44,
5644      32, 65,120,105,115, 44, 32, 66, 97,115,101, 80,111,105,110,
5645     116, 44, 32, 65,120, 44, 32, 65,121, 44, 32, 65,122, 44, 32,
5646      88, 48, 44, 32, 89, 48, 44, 32, 90, 48, 41, 13, 10,105,102,
5647      32,116,121,112,101, 40, 71,114, 97,112,104,105, 99, 97,108,
5648      83,117,114,102, 97, 99,101, 73, 68, 41, 32,126, 61, 32, 39,
5649     110,117,109, 98,101,114, 39, 32,116,104,101,110, 13, 10,101,
5650     114,114,111,114, 40, 39, 70,105,114,115,116, 32, 97,114,103,
5651     117,109,101,110,116, 32,102,111,114, 32, 82,111,116, 97,116,
5652     101, 83,117,114,102, 97, 99,101, 32,109,117,115,116, 32,104,
5653      97,118,101, 32,116,121,112,101, 32,110,117,109, 98,101,114,
5654      32, 40, 73, 68, 32,102,111,114, 32,103,114, 97,112,104,105,
5655      99, 97,108, 32,115,117,114,102, 97, 99,101, 41, 39, 44, 32,
5656      50, 41, 13, 10,101,110,100, 13, 10,105,102, 32,116,121,112,
5657     101, 40, 65,110,103,108,101, 41, 32,126, 61, 32, 39,110,117,
5658     109, 98,101,114, 39, 32,116,104,101,110, 13, 10,101,114,114,
5659     111,114, 40, 39, 83,101, 99,111,110,100, 32, 97,114,103,117,
5660     109,101,110,116, 32,102,111,114, 32, 82,111,116, 97,116,101,
5661      83,117,114,102, 97, 99,101, 32,109,117,115,116, 32,104, 97,
5662     118,101, 32,116,121,112,101, 32,110,117,109, 98,101,114, 32,
5663      40,114,111,116, 97,116,105,111,110, 32, 97,110,103,108,101,
5664      41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,105,102,
5665      32,116,121,112,101, 40, 65,120,105,115, 41, 32,126, 61, 32,
5666      39,110,117,109, 98,101,114, 39, 32,116,104,101,110, 13, 10,
5667     101,114,114,111,114, 40, 39, 84,104,105,114,100, 32, 97,114,
5668     103,117,109,101,110,116, 32,102,111,114, 32, 82,111,116, 97,
5669     116,101, 83,117,114,102, 97, 99,101, 32,109,117,115,116, 32,
5670     104, 97,118,101, 32,116,121,112,101, 32,110,117,109, 98,101,
5671     114, 32, 40,102,111,114, 32,101,120, 97,109,112,108,101, 32,
5672      65, 88, 73, 83, 95, 89, 41, 39, 44, 32, 50, 41, 13, 10,101,
5673     110,100, 13, 10,105,102, 32,116,121,112,101, 40, 66, 97,115,
5674     101, 80,111,105,110,116, 41, 32,126, 61, 32, 39,110,117,109,
5675      98,101,114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,
5676     114, 40, 39, 70,111,117,114,116,104, 32, 97,114,103,117,109,
5677     101,110,116, 32,102,111,114, 32, 82,111,116, 97,116,101, 83,
5678     117,114,102, 97, 99,101, 32,109,117,115,116, 32,104, 97,118,
5679     101, 32,116,121,112,101, 32,110,117,109, 98,101,114, 32, 40,
5680     102,111,114, 32,101,120, 97,109,112,108,101, 32, 80, 79, 73,
5681      78, 84, 95, 76, 69, 70, 84, 95, 84, 79, 80, 41, 39, 44, 32,
5682      50, 41, 13, 10,101,110,100, 13, 10, 13, 10,108,111, 99, 97,
5683     108, 32,114,101,115, 32, 61, 32,102, 97,108,115,101, 13, 10,
5684     108,111, 99, 97,108, 32,116,121,112,101, 65,120, 32, 61, 32,
5685     116,111,108,117, 97, 46,116,121,112,101, 40, 65,120, 41, 13,
5686      10,105,102, 32,116,121,112,101, 65,120, 32, 61, 61, 32, 39,
5687      86,101, 99,116,111,114, 51, 39, 32,111,114, 32,116,121,112,
5688     101, 65,120, 32, 61, 61, 32, 39, 99,111,110,115,116, 32, 86,
5689     101, 99,116,111,114, 51, 39, 32,116,104,101,110, 13, 10,105,
5690     102, 32, 65,122, 32, 61, 61, 32,110,105,108, 32, 97,110,100,
5691      32, 88, 48, 32, 61, 61, 32,110,105,108, 32, 97,110,100, 32,
5692      89, 48, 32, 61, 61, 32,110,105,108, 32, 97,110,100, 32, 90,
5693      48, 32, 61, 61, 32,110,105,108, 32,116,104,101,110, 13, 10,
5694     108,111, 99, 97,108, 32,116,121,112,101, 65,121, 32, 61, 32,
5695     116,111,108,117, 97, 46,116,121,112,101, 40, 65,121, 41, 13,
5696      10,105,102, 32,116,121,112,101, 65,121, 32, 61, 61, 32, 39,
5697      86,101, 99,116,111,114, 51, 39, 32,111,114, 32,116,121,112,
5698     101, 65,121, 32, 61, 61, 32, 39, 99,111,110,115,116, 32, 86,
5699     101, 99,116,111,114, 51, 39, 32,116,104,101,110, 13, 10,114,
5700     101,115, 32, 61, 32,115, 99,101,110,101, 58, 82,111,116, 97,
5701     116,101, 83,117,114,102, 97, 99,101, 86, 40, 71,114, 97,112,
5702     104,105, 99, 97,108, 83,117,114,102, 97, 99,101, 73, 68, 44,
5703      32, 65,110,103,108,101, 44, 32, 65,120,105,115, 44, 32, 66,
5704      97,115,101, 80,111,105,110,116, 44, 32, 65,120, 44, 32, 65,
5705     121, 41, 13, 10,101,108,115,101,105,102, 32, 65,121, 32, 61,
5706      61, 32,110,105,108, 32,116,104,101,110, 13, 10,114,101,115,
5707      32, 61, 32,115, 99,101,110,101, 58, 82,111,116, 97,116,101,
5708      83,117,114,102, 97, 99,101, 86, 40, 71,114, 97,112,104,105,
5709      99, 97,108, 83,117,114,102, 97, 99,101, 73, 68, 44, 32, 65,
5710     110,103,108,101, 44, 32, 65,120,105,115, 44, 32, 66, 97,115,
5711     101, 80,111,105,110,116, 44, 32, 65,120, 41, 13, 10,101,108,
5712     115,101, 13, 10,101,114,114,111,114, 40, 39, 83,105,120,116,
5713     104, 32, 97,114,103,117,109,101,110,116, 32,102,111,114, 32,
5714      82,111,116, 97,116,101, 83,117,114,102, 97, 99,101, 32,105,
5715     115, 32,105,110, 99,111,114,114,101, 99,116, 39, 44, 32, 50,
5716      41, 32, 13, 10,101,110,100, 13, 10,101,108,115,101, 13, 10,
5717     101,114,114,111,114, 40, 39, 87,114,111,110,103, 32,110,117,
5718     109, 98,101,114, 32,111,114, 32,116,121,112,101, 32,111,102,
5719      32,112, 97,114, 97,109,101,116,101,114,115, 32,102,111,114,
5720      32, 82,111,116, 97,116,101, 83,117,114,102, 97, 99,101, 32,
5721      40,115,101,101, 32,102,114,111,109, 32,115,105,120,116,104,
5722      32,112, 97,114, 97,109,101,116,101,114, 41, 39, 44, 32, 50,
5723      41, 13, 10,101,110,100, 13, 10, 13, 10,105,102, 32,114,101,
5724     115, 32, 61, 61, 32,102, 97,108,115,101, 32,116,104,101,110,
5725      13, 10,101,114,114,111,114, 40, 39, 69,114,114,111,114, 32,
5726     105,110, 32,102,117,110, 99,116,105,111,110, 32, 82,111,116,
5727      97,116,101, 83,117,114,102, 97, 99,101, 32, 40,109, 97,121,
5728      98,101, 32,121,111,117, 32,104, 97,118,101, 32,115,112,101,
5729      99,105,102,105,101,100, 32,119,114,111,110,103, 32,105,100,
5730      32,111,114, 32,119,114,111,110,103, 32, 97,120,105,115, 32,
5731      99,111,110,102,105,103,117,114, 97,116,105,111,110, 41, 39,
5732      44, 32, 50, 41, 13, 10,101,108,115,101, 13, 10,114,101,116,
5733     117,114,110, 13, 10,101,110,100, 13, 10,101,110,100, 13, 10,
5734     105,102, 32,116,121,112,101, 65,120, 32, 61, 61, 32, 39,110,
5735     117,109, 98,101,114, 39, 32, 97,110,100, 32,116,121,112,101,
5736      40, 65,121, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114,
5737      39, 32, 97,110,100, 32,116,121,112,101, 40, 65,122, 41, 32,
5738      61, 61, 32, 39,110,117,109, 98,101,114, 39, 32,116,104,101,
5739     110, 13, 10,105,102, 32,116,121,112,101, 40, 88, 48, 41, 32,
5740      61, 61, 32, 39,110,117,109, 98,101,114, 39, 32, 97,110,100,
5741      32,116,121,112,101, 40, 89, 48, 41, 32, 61, 61, 32, 39,110,
5742     117,109, 98,101,114, 39, 32, 97,110,100, 32,116,121,112,101,
5743      40, 90, 48, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114,
5744      39, 32,116,104,101,110, 13, 10,114,101,115, 32, 61, 32,115,
5745      99,101,110,101, 58, 82,111,116, 97,116,101, 83,117,114,102,
5746      97, 99,101, 78, 40, 71,114, 97,112,104,105, 99, 97,108, 83,
5747     117,114,102, 97, 99,101, 73, 68, 44, 32, 65,110,103,108,101,
5748      44, 32, 65,120,105,115, 44, 32, 66, 97,115,101, 80,111,105,
5749     110,116, 44, 32, 65,120, 44, 32, 65,121, 44, 32, 65,122, 44,
5750      32, 88, 48, 44, 32, 89, 48, 44, 32, 90, 48, 41, 13, 10,101,
5751     108,115,101,105,102, 32, 88, 48, 32, 61, 61, 32,110,105,108,
5752      32, 97,110,100, 32, 89, 48, 32, 61, 61, 32,110,105,108, 32,
5753      97,110,100, 32, 90, 48, 32, 61, 61, 32,110,105,108, 32,116,
5754     104,101,110, 13, 10,114,101,115, 32, 61, 32,115, 99,101,110,
5755     101, 58, 82,111,116, 97,116,101, 83,117,114,102, 97, 99,101,
5756      78, 40, 71,114, 97,112,104,105, 99, 97,108, 83,117,114,102,
5757      97, 99,101, 73, 68, 44, 32, 65,110,103,108,101, 44, 32, 65,
5758     120,105,115, 44, 32, 66, 97,115,101, 80,111,105,110,116, 44,
5759      32, 65,120, 44, 32, 65,121, 44, 32, 65,122, 41, 13, 10,101,
5760     108,115,101, 13, 10,101,114,114,111,114, 40, 39, 87,114,111,
5761     110,103, 32,110,117,109, 98,101,114, 32,111,114, 32,116,121,
5762     112,101, 32,111,102, 32,112, 97,114, 97,109,101,116,101,114,
5763     115, 32,102,111,114, 32, 82,111,116, 97,116,101, 83,117,114,
5764     102, 97, 99,101, 32, 40,115,101,101, 32,102,114,111,109, 32,
5765     101,105,103,104,116,104, 32,112, 97,114, 97,109,101,116,101,
5766     114, 41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,101,
5767     108,115,101,105,102, 32, 65,120, 32, 61, 61, 32,110,105,108,
5768      32, 97,110,100, 32, 65,121, 32, 61, 61, 32,110,105,108, 32,
5769      97,110,100, 32, 65,122, 32, 61, 61, 32,110,105,108, 32, 97,
5770     110,100, 32, 88, 48, 32, 61, 61, 32,110,105,108, 32, 97,110,
5771     100, 32, 89, 48, 32, 61, 61, 32,110,105,108, 32, 97,110,100,
5772      32, 90, 48, 32, 61, 61, 32,110,105,108, 32,116,104,101,110,
5773      13, 10,114,101,115, 32, 61, 32,115, 99,101,110,101, 58, 82,
5774     111,116, 97,116,101, 83,117,114,102, 97, 99,101, 78, 40, 71,
5775     114, 97,112,104,105, 99, 97,108, 83,117,114,102, 97, 99,101,
5776      73, 68, 44, 32, 65,110,103,108,101, 44, 32, 65,120,105,115,
5777      44, 32, 66, 97,115,101, 80,111,105,110,116, 41, 13, 10,101,
5778     108,115,101, 13, 10,101,114,114,111,114, 40, 39, 87,114,111,
5779     110,103, 32,110,117,109, 98,101,114, 32,111,114, 32,116,121,
5780     112,101, 32,111,102, 32,112, 97,114, 97,109,101,116,101,114,
5781     115, 32,102,111,114, 32, 82,111,116, 97,116,101, 83,117,114,
5782     102, 97, 99,101, 32, 40,115,101,101, 32,102,114,111,109, 32,
5783     102,105,102,116,104, 32,112, 97,114, 97,109,101,116,101,114,
5784      41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,105,102,
5785      32,114,101,115, 32, 61, 61, 32,102, 97,108,115,101, 32,116,
5786     104,101,110, 13, 10,101,114,114,111,114, 40, 39, 69,114,114,
5787     111,114, 32,105,110, 32,102,117,110, 99,116,105,111,110, 32,
5788      82,111,116, 97,116,101, 83,117,114,102, 97, 99,101, 32, 40,
5789     109, 97,121, 98,101, 32,121,111,117, 32,104, 97,118,101, 32,
5790     115,112,101, 99,105,102,105,101,100, 32,119,114,111,110,103,
5791      32,105,100, 32,111,114, 32,119,114,111,110,103, 32, 97,120,
5792     105,115, 32, 99,111,110,102,105,103,117,114, 97,116,105,111,
5793     110, 41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,101,
5794     110,100, 13, 10,102,117,110, 99,116,105,111,110, 32, 83, 99,
5795      97,108,101, 83,117,114,102, 97, 99,101, 40, 71,114, 97,112,
5796     104,105, 99, 97,108, 83,117,114,102, 97, 99,101, 73, 68, 44,
5797      32, 77,117,108, 88, 44, 32, 77,117,108, 89, 44, 32, 77,117,
5798     108, 90, 44, 32, 66, 97,115,101, 80,111,105,110,116, 44, 32,
5799      88, 48, 44, 32, 89, 48, 44, 32, 90, 48, 41, 13, 10,105,102,
5800      32,116,121,112,101, 40, 71,114, 97,112,104,105, 99, 97,108,
5801      83,117,114,102, 97, 99,101, 73, 68, 41, 32,126, 61, 32, 39,
5802     110,117,109, 98,101,114, 39, 32,116,104,101,110, 13, 10,101,
5803     114,114,111,114, 40, 39, 70,105,114,115,116, 32, 97,114,103,
5804     117,109,101,110,116, 32,102,111,114, 32, 83, 99, 97,108,101,
5805      83,117,114,102, 97, 99,101, 32,109,117,115,116, 32,104, 97,
5806     118,101, 32,116,121,112,101, 32,110,117,109, 98,101,114, 32,
5807      40, 73, 68, 32,102,111,114, 32,103,114, 97,112,104,105, 99,
5808      97,108, 32,115,117,114,102, 97, 99,101, 41, 39, 44, 32, 50,
5809      41, 13, 10,101,110,100, 13, 10, 13, 10,108,111, 99, 97,108,
5810      32,114,101,115, 32, 61, 32,102, 97,108,115,101, 13, 10,108,
5811     111, 99, 97,108, 32,116,121,112,101, 77,117,108, 88, 32, 61,
5812      32,116,111,108,117, 97, 46,116,121,112,101, 40, 77,117,108,
5813      88, 41, 13, 10,105,102, 32,116,121,112,101, 77,117,108, 88,
5814      32, 61, 61, 32, 39, 86,101, 99,116,111,114, 51, 39, 32,111,
5815     114, 32,116,121,112,101, 77,117,108, 88, 32, 61, 61, 32, 39,
5816      99,111,110,115,116, 32, 86,101, 99,116,111,114, 51, 39, 32,
5817     116,104,101,110, 13, 10,105,102, 32,116,121,112,101, 40, 77,
5818     117,108, 89, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114,
5819      39, 32,116,104,101,110, 13, 10,108,111, 99, 97,108, 32,116,
5820     121,112,101, 77,117,108, 90, 32, 61, 32,116,111,108,117, 97,
5821      46,116,121,112,101, 40, 77,117,108, 90, 41, 13, 10,105,102,
5822      32,116,121,112,101, 77,117,108, 90, 32, 61, 61, 32, 39, 86,
5823     101, 99,116,111,114, 51, 39, 32,111,114, 32,116,121,112,101,
5824      77,117,108, 90, 32, 61, 61, 32, 39, 99,111,110,115,116, 32,
5825      86,101, 99,116,111,114, 51, 39, 32,116,104,101,110, 13, 10,
5826     114,101,115, 32, 61, 32,115, 99,101,110,101, 58, 83, 99, 97,
5827     108,101, 83,117,114,102, 97, 99,101, 40, 71,114, 97,112,104,
5828     105, 99, 97,108, 83,117,114,102, 97, 99,101, 73, 68, 44, 32,
5829      77,117,108, 88, 44, 32, 77,117,108, 89, 44, 32, 77,117,108,
5830      90, 41, 13, 10,101,108,115,101,105,102, 32, 77,117,108, 90,
5831      32, 61, 61, 32,110,105,108, 32,116,104,101,110, 13, 10,114,
5832     101,115, 32, 61, 32,115, 99,101,110,101, 58, 83, 99, 97,108,
5833     101, 83,117,114,102, 97, 99,101, 40, 71,114, 97,112,104,105,
5834      99, 97,108, 83,117,114,102, 97, 99,101, 73, 68, 44, 32, 77,
5835     117,108, 88, 44, 32, 77,117,108, 89, 41, 13, 10,101,108,115,
5836     101, 13, 10,101,114,114,111,114, 40, 39, 70,111,117,114,116,
5837     104, 32, 97,114,103,117,109,101,110,116, 32,102,111,114, 32,
5838      83, 99, 97,108,101, 83,117,114,102, 97, 99,101, 32,104, 97,
5839     115, 32,119,114,111,110,103, 32,116,121,112,101, 39, 44, 32,
5840      50, 41, 13, 10,101,110,100, 13, 10,101,108,115,101, 13, 10,
5841     101,114,114,111,114, 40, 39, 84,104,105,114,100, 32, 97,114,
5842     103,117,109,101,110,116, 32,102,111,114, 32, 83, 99, 97,108,
5843     101, 83,117,114,102, 97, 99,101, 32,104, 97,115, 32,119,114,
5844     111,110,103, 32,116,121,112,101, 39, 44, 32, 50, 41, 13, 10,
5845     101,110,100, 13, 10,105,102, 32,114,101,115, 32, 61, 61, 32,
5846     102, 97,108,115,101, 32,116,104,101,110, 13, 10,101,114,114,
5847     111,114, 40, 39, 69,114,114,111,114, 32,105,110, 32,102,117,
5848     110, 99,116,105,111,110, 32, 83, 99, 97,108,101, 83,117,114,
5849     102, 97, 99,101, 32, 40,121,111,117, 32,104, 97,118,101, 32,
5850     115,112,101, 99,105,102,105,101,100, 32,119,114,111,110,103,
5851      32,105,100, 32,111,114, 32,115,101,110,116, 32,110,101,103,
5852      97,116,105,118,101, 32,109,117,108,116,105,112,108,105,101,
5853     114,115, 41, 39, 44, 32, 50, 41, 13, 10,101,108,115,101, 13,
5854      10,114,101,116,117,114,110, 13, 10,101,110,100, 13, 10,101,
5855     110,100, 13, 10,105,102, 32,116,121,112,101, 40, 77,117,108,
5856      88, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114, 39, 32,
5857      97,110,100, 32,116,121,112,101, 40, 77,117,108, 89, 41, 32,
5858      61, 61, 32, 39,110,117,109, 98,101,114, 39, 32, 97,110,100,
5859      32,116,121,112,101, 40, 77,117,108, 90, 41, 32, 61, 61, 32,
5860      39,110,117,109, 98,101,114, 39, 32,116,104,101,110, 13, 10,
5861     105,102, 32,116,121,112,101, 40, 66, 97,115,101, 80,111,105,
5862     110,116, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114, 39,
5863      32,116,104,101,110, 13, 10,105,102, 32,116,121,112,101, 40,
5864      88, 48, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114, 39,
5865      32, 97,110,100, 32,116,121,112,101, 40, 89, 48, 41, 32, 61,
5866      61, 32, 39,110,117,109, 98,101,114, 39, 32, 97,110,100, 32,
5867     116,121,112,101, 40, 90, 48, 41, 32, 61, 61, 32, 39,110,117,
5868     109, 98,101,114, 39, 32,116,104,101,110, 13, 10,114,101,115,
5869      32, 61, 32,115, 99,101,110,101, 58, 83, 99, 97,108,101, 83,
5870     117,114,102, 97, 99,101, 40, 71,114, 97,112,104,105, 99, 97,
5871     108, 83,117,114,102, 97, 99,101, 73, 68, 44, 32, 77,117,108,
5872      88, 44, 32, 77,117,108, 89, 44, 32, 77,117,108, 90, 44, 32,
5873      66, 97,115,101, 80,111,105,110,116, 44, 32, 88, 48, 44, 32,
5874      89, 48, 44, 32, 90, 48, 41, 13, 10,101,108,115,101,105,102,
5875      32, 88, 48, 32, 61, 61, 32,110,105,108, 32, 97,110,100, 32,
5876      89, 48, 32, 61, 61, 32,110,105,108, 32, 97,110,100, 32, 90,
5877      48, 32, 61, 61, 32,110,105,108, 32,116,104,101,110, 13, 10,
5878     114,101,115, 32, 61, 32,115, 99,101,110,101, 58, 83, 99, 97,
5879     108,101, 83,117,114,102, 97, 99,101, 40, 71,114, 97,112,104,
5880     105, 99, 97,108, 83,117,114,102, 97, 99,101, 73, 68, 44, 32,
5881      77,117,108, 88, 44, 32, 77,117,108, 89, 44, 32, 77,117,108,
5882      90, 44, 32, 66, 97,115,101, 80,111,105,110,116, 41, 13, 10,
5883     101,108,115,101, 13, 10,101,114,114,111,114, 40, 39, 87,114,
5884     111,110,103, 32,110,117,109, 98,101,114, 32,111,114, 32,116,
5885     121,112,101, 32,111,102, 32,112, 97,114, 97,109,101,116,101,
5886     114,115, 32,102,111,114, 32, 83, 99, 97,108,101, 83,117,114,
5887     102, 97, 99,101, 32, 40,115,101,101, 32,102,114,111,109, 32,
5888     115,105,120,116,104, 32,112, 97,114, 97,109,101,116,101,114,
5889      41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,101,108,
5890     115,101, 13, 10,101,114,114,111,114, 40, 39, 70,105,102,116,
5891     104, 32, 97,114,103,117,109,101,110,116, 32,102,111,114, 32,
5892      83, 99, 97,108,101, 83,117,114,102, 97, 99,101, 32,104, 97,
5893     115, 32,119,114,111,110,103, 32,116,121,112,101, 39, 44, 32,
5894      50, 41, 13, 10,101,110,100, 13, 10,101,108,115,101, 13, 10,
5895     101,114,114,111,114, 40, 39, 87,114,111,110,103, 32,110,117,
5896     109, 98,101,114, 32,111,114, 32,116,121,112,101, 32,111,102,
5897      32,112, 97,114, 97,109,101,116,101,114,115, 32,102,111,114,
5898      32, 83, 99, 97,108,101, 83,117,114,102, 97, 99,101, 32, 40,
5899     115,101,101, 32,102,114,111,109, 32,115,101, 99,111,110,100,
5900      32,112, 97,114, 97,109,101,116,101,114, 41, 39, 44, 32, 50,
5901      41, 13, 10,101,110,100, 13, 10,105,102, 32,114,101,115, 32,
5902      61, 61, 32,102, 97,108,115,101, 32,116,104,101,110, 13, 10,
5903     101,114,114,111,114, 40, 39, 69,114,114,111,114, 32,105,110,
5904      32,102,117,110, 99,116,105,111,110, 32, 83, 99, 97,108,101,
5905      83,117,114,102, 97, 99,101, 32, 40,109, 97,121, 98,101, 32,
5906     121,111,117, 32,104, 97,118,101, 32,115,112,101, 99,105,102,
5907     105,101,100, 32,119,114,111,110,103, 32,105,100, 41, 39, 44,
5908      32, 50, 41, 13, 10,101,110,100, 13, 10,101,110,100, 13, 10,
5909     102,117,110, 99,116,105,111,110, 32, 82,101,115,101,116, 83,
5910     117,114,102, 97, 99,101, 84,114, 97,110,115,102,111,114,109,
5911      97,116,105,111,110, 40, 71,114, 97,112,104,105, 99, 97,108,
5912      83,117,114,102, 97, 99,101, 73, 68, 41, 13, 10,105,102, 32,
5913     116,121,112,101, 40, 71,114, 97,112,104,105, 99, 97,108, 83,
5914     117,114,102, 97, 99,101, 73, 68, 41, 32,126, 61, 32, 39,110,
5915     117,109, 98,101,114, 39, 32,116,104,101,110, 13, 10,101,114,
5916     114,111,114, 40, 39, 65,114,103,117,109,101,110,116, 32,102,
5917     111,114, 32, 82,101,115,101,116, 83,117,114,102, 97, 99,101,
5918      84,114, 97,110,115,102,111,114,109, 97,116,105,111,110, 32,
5919     109,117,115,116, 32,104, 97,118,101, 32,116,121,112,101, 32,
5920     110,117,109, 98,101,114, 32, 40, 73, 68, 32,102,111,114, 32,
5921     103,114, 97,112,104,105, 99, 97,108, 32,115,117,114,102, 97,
5922      99,101, 41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,
5923     108,111, 99, 97,108, 32,114,101,115, 32, 61, 32,115, 99,101,
5924     110,101, 58, 82,101,115,101,116, 83,117,114,102, 97, 99,101,
5925      84,114, 97,110,115,102,111,114,109, 97,116,105,111,110, 40,
5926      71,114, 97,112,104,105, 99, 97,108, 83,117,114,102, 97, 99,
5927     101, 73, 68, 41, 13, 10,105,102, 32,114,101,115, 32, 61, 61,
5928      32,102, 97,108,115,101, 32,116,104,101,110, 13, 10,101,114,
5929     114,111,114, 40, 39, 69,114,114,111,114, 32,105,110, 32,102,
5930     117,110, 99,116,105,111,110, 32, 82,101,115,101,116, 83,117,
5931     114,102, 97, 99,101, 84,114, 97,110,115,102,111,114,109, 97,
5932     116,105,111,110, 32, 40,109, 97,121, 98,101, 32,121,111,117,
5933      32,104, 97,118,101, 32,115,112,101, 99,105,102,105,101,100,
5934      32,119,114,111,110,103, 32,105,100, 41, 39, 44, 32, 50, 41,
5935      13, 10,101,110,100, 13, 10,101,110,100, 13, 10,102,117,110,
5936      99,116,105,111,110, 32, 83,101,116, 84,114, 97,110,115,102,
5937     111,114,109, 97,116,105,111,110, 77, 97,116,114,105,120, 40,
5938     103,114, 97,112,104,105, 99, 97,108, 83,117,114,102, 97, 99,
5939     101, 73, 68, 44, 32,109, 97,116,114,105,120, 52, 41, 13, 10,
5940     105,102, 32,116,121,112,101, 40,103,114, 97,112,104,105, 99,
5941      97,108, 83,117,114,102, 97, 99,101, 73, 68, 41, 32,126, 61,
5942      32, 39,110,117,109, 98,101,114, 39, 32,116,104,101,110, 13,
5943      10,101,114,114,111,114, 40, 39, 70,105,114,115,116, 32, 97,
5944     114,103,117,109,101,110,116, 32,102,111,114, 32, 83,101,116,
5945      84,114, 97,110,115,102,111,114,109, 97,116,105,111,110, 77,
5946      97,116,114,105,120, 32,109,117,115,116, 32,104, 97,118,101,
5947      32,116,121,112,101, 32,110,117,109, 98,101,114, 32, 40, 73,
5948      68, 32,102,111,114, 32,103,114, 97,112,104,105, 99, 97,108,
5949      32,115,117,114,102, 97, 99,101, 41, 39, 44, 32, 50, 41, 13,
5950      10,101,110,100, 13, 10,108,111, 99, 97,108, 32,116,121,112,
5951     101, 77, 97,116, 52, 32, 61, 32,116,111,108,117, 97, 46,116,
5952     121,112,101, 40,109, 97,116,114,105,120, 52, 41, 13, 10,105,
5953     102, 32,116,121,112,101, 77, 97,116, 52, 32,126, 61, 32, 39,
5954      76,117, 97, 77, 97,116,114,105,120, 52, 39, 32, 97,110,100,
5955      32,116,121,112,101, 77, 97,116, 52, 32,126, 61, 32, 39, 99,
5956     111,110,115,116, 32, 76,117, 97, 77, 97,116,114,105,120, 52,
5957      39, 32,116,104,101,110, 32, 13, 10,101,114,114,111,114, 40,
5958      39, 83,101, 99,111,110,100, 32, 97,114,103,117,109,101,110,
5959     116, 32,102,111,114, 32, 83,101,116, 84,114, 97,110,115,102,
5960     111,114,109, 97,116,105,111,110, 77, 97,116,114,105,120, 32,
5961     109,117,115,116, 32,104, 97,118,101, 32,116,121,112,101, 32,
5962      77, 97,116,114,105,120, 52, 32, 40,116,114, 97,110,115,102,
5963     111,114,109, 97,116,105,111,110, 32,109, 97,116,114,105,120,
5964      41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,108,111,
5965      99, 97,108, 32,114,101,115, 32, 61, 32,115, 99,101,110,101,
5966      58, 83,101,116, 84,114, 97,110,115,102,111,114,109, 97,116,
5967     105,111,110, 77, 97,116,114,105,120, 40,103,114, 97,112,104,
5968     105, 99, 97,108, 83,117,114,102, 97, 99,101, 73, 68, 44, 32,
5969     109, 97,116,114,105,120, 52, 41, 13, 10,105,102, 32,114,101,
5970     115, 32, 61, 61, 32,102, 97,108,115,101, 32,116,104,101,110,
5971      13, 10,101,114,114,111,114, 40, 39, 69,114,114,111,114, 32,
5972     105,110, 32,102,117,110, 99,116,105,111,110, 32, 83,101,116,
5973      84,114, 97,110,115,102,111,114,109, 97,116,105,111,110, 77,
5974      97,116,114,105,120, 32, 40,109, 97,121, 98,101, 32,121,111,
5975     117, 32,104, 97,118,101, 32,115,112,101, 99,105,102,105,101,
5976     100, 32,119,114,111,110,103, 32,105,100, 41, 39, 44, 32, 50,
5977      41, 13, 10,101,110,100, 13, 10,101,110,100, 13, 10, 45, 45,
5978      45, 45, 45, 45, 45,32
5979    };
5980    tolua_dobuffer(tolua_S,(char*)B,sizeof(B),"tolua embedded: ./ModelMatrixManipulations.lua");
5981    lua_settop(tolua_S, top);
5982   } /* end of embedded lua code */
5983
5984
5985   { /* begin embedded lua code */
5986    int top = lua_gettop(tolua_S);
5987    static const unsigned char B[] = {
5988     10,102,117,110, 99,116,105,111,110, 32, 71,101,116, 68,105,
5989     115,116, 97,110, 99,101, 70,114,111,109, 71,114,111,117,110,
5990     100, 40, 77,111,100,101,108, 83,117,114,102, 97, 99,101, 73,
5991      68, 41, 13, 10,105,102, 32,116,121,112,101, 40, 77,111,100,
5992     101,108, 83,117,114,102, 97, 99,101, 73, 68, 41, 32,126, 61,
5993      32, 39,110,117,109, 98,101,114, 39, 32,116,104,101,110, 13,
5994      10,101,114,114,111,114, 40, 39, 65,114,103,117,109,101,110,
5995     116, 32,102,111,114, 32, 71,101,116, 68,105,115,116, 97,110,
5996      99,101, 70,114,111,109, 71,114,111,117,110,100, 32,109,117,
5997     115,116, 32,104, 97,118,101, 32,116,121,112,101, 32,110,117,
5998     109, 98,101,114, 32, 40, 73, 68, 32,102,111,114, 32,109,111,
5999     100,101,108, 32, 99,111,110,116, 97,105,110,101,114, 41, 39,
6000      44, 32, 50, 41, 13, 10,101,110,100, 13, 10,108,111, 99, 97,
6001     108, 32,114,101,115, 32, 61, 32,115, 99,101,110,101, 58, 71,
6002     101,116, 68,105,115,116, 97,110, 99,101, 70,114,111,109, 71,
6003     114,111,117,110,100, 40, 77,111,100,101,108, 83,117,114,102,
6004      97, 99,101, 73, 68, 41, 13, 10,105,102, 32,114,101,115, 46,
6005     116,121,112,101, 32, 61, 61, 32, 80,114,111,112,101,114,116,
6006     121, 67, 97,115,116, 46, 78, 85, 77, 66, 69, 82, 32,116,104,
6007     101,110, 13, 10,114,101,116,117,114,110, 32,114,101,115, 46,
6008     118, 97,108,117,101, 46,110,117,109, 98,101,114, 86, 97,108,
6009     117,101, 13, 10,101,108,115,101, 13, 10,101,114,114,111,114,
6010      40, 39, 69,114,114,111,114, 32,105,110, 32,102,117,110, 99,
6011     116,105,111,110, 32, 71,101,116, 68,105,115,116, 97,110, 99,
6012     101, 70,114,111,109, 71,114,111,117,110,100, 58, 32,121,111,
6013     117, 32,115,112,101, 99,105,102,105,101,100, 32,119,114,111,
6014     110,103, 32,105,100, 39, 44, 32, 50, 41, 13, 10,101,110,100,
6015      13, 10,101,110,100, 13, 10,102,117,110, 99,116,105,111,110,
6016      32, 71,101,116, 78,101, 97,114,101,115,116, 80,111,105,110,
6017     116,115, 73,100,115, 40, 71,114, 97,112,104,105, 99, 97,108,
6018      83,117,114,102, 97, 99,101, 73, 68, 44, 32, 80,111,115, 88,
6019      44, 32, 80,111,115, 89, 44, 32, 80,111,115, 90, 41, 13, 10,
6020     105,102, 32,116,121,112,101, 40, 71,114, 97,112,104,105, 99,
6021      97,108, 83,117,114,102, 97, 99,101, 73, 68, 41, 32,126, 61,
6022      32, 39,110,117,109, 98,101,114, 39, 32,116,104,101,110, 13,
6023      10,101,114,114,111,114, 40, 39, 70,105,114,115,116, 32, 97,
6024     114,103,117,109,101,110,116, 32,102,111,114, 32, 71,101,116,
6025      78,101, 97,114,101,115,116, 80,111,105,110,116,115, 73,100,
6026     115, 32,109,117,115,116, 32,104, 97,118,101, 32,116,121,112,
6027     101, 32,110,117,109, 98,101,114, 32, 40, 73, 68, 32,102,111,
6028     114, 32,103,114, 97,112,104,105, 99, 97,108, 32,115,117,114,
6029     102, 97, 99,101, 41, 39, 44, 32, 50, 41, 13, 10,101,110,100,
6030      13, 10,108,111, 99, 97,108, 32,114,101,115, 13, 10,105,102,
6031      32,116,111,108,117, 97, 46,116,121,112,101, 40, 80,111,115,
6032      88, 41, 32, 61, 61, 32, 39, 86,101, 99,116,111,114, 51, 39,
6033      32, 97,110,100, 32, 80,111,115, 89, 32, 61, 61, 32,110,105,
6034     108, 32, 97,110,100, 32, 80,111,115, 90, 32, 61, 61, 32,110,
6035     105,108, 32,116,104,101,110, 13, 10,114,101,115, 32, 61, 32,
6036     115, 99,101,110,101, 58, 71,101,116, 78,101, 97,114,101,115,
6037     116, 80,111,105,110,116,115, 73,100,115, 40, 71,114, 97,112,
6038     104,105, 99, 97,108, 83,117,114,102, 97, 99,101, 73, 68, 44,
6039      32, 80,111,115, 88, 41, 13, 10,101,108,115,101,105,102, 32,
6040     116,121,112,101, 40, 80,111,115, 88, 41, 32, 61, 61, 32, 39,
6041     110,117,109, 98,101,114, 39, 32, 97,110,100, 32,116,121,112,
6042     101, 40, 80,111,115, 89, 41, 32, 61, 61, 32, 39,110,117,109,
6043      98,101,114, 39, 32, 97,110,100, 32,116,121,112,101, 40, 80,
6044     111,115, 90, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114,
6045      39, 32,116,104,101,110, 13, 10,114,101,115, 32, 61, 32,115,
6046      99,101,110,101, 58, 71,101,116, 78,101, 97,114,101,115,116,
6047      80,111,105,110,116,115, 73,100,115, 40, 71,114, 97,112,104,
6048     105, 99, 97,108, 83,117,114,102, 97, 99,101, 73, 68, 44, 32,
6049      80,111,115, 88, 44, 32, 80,111,115, 89, 44, 32, 80,111,115,
6050      90, 41, 13, 10,101,108,115,101, 13, 10,101,114,114,111,114,
6051      40, 39, 87,114,111,110,103, 32,110,117,109, 98,101,114, 32,
6052     111,114, 32,116,121,112,101, 32,111,102, 32,112, 97,114, 97,
6053     109,101,116,101,114,115, 32,102,111,114, 32, 71,101,116, 78,
6054     101, 97,114,101,115,116, 80,111,105,110,116,115, 73,100,115,
6055      32, 40,115,101,101, 32,102,114,111,109, 32,115,101, 99,111,
6056     110,100, 32,112, 97,114, 97,109,101,116,101,114, 41, 39, 44,
6057      32, 50, 41, 32, 13, 10,101,110,100, 32, 13, 10,105,102, 32,
6058     114,101,115, 46,116,121,112,101, 32, 61, 61, 32, 80,114,111,
6059     112,101,114,116,121, 67, 97,115,116, 46, 86, 69, 67, 84, 79,
6060      82, 95, 86, 69, 67, 84, 79, 82, 32,116,104,101,110, 13, 10,
6061     114,101,116,117,114,110, 32,114,101,115, 46,118, 97,108,117,
6062     101, 46,118,101, 99, 86,101, 99, 86, 97,108,117,101, 13, 10,
6063     101,108,115,101,105,102, 32,114,101,115, 46,116,121,112,101,
6064      32, 61, 61, 32, 80,114,111,112,101,114,116,121, 67, 97,115,
6065     116, 46, 78, 79, 95, 80, 82, 79, 80, 69, 82, 84, 89, 32,116,
6066     104,101,110, 13, 10,114,101,116,117,114,110, 32,110,105,108,
6067      13, 10,101,108,115,101,105,102, 32,114,101,115, 46,116,121,
6068     112,101, 32, 61, 61, 32, 80,114,111,112,101,114,116,121, 67,
6069      97,115,116, 46, 66, 79, 79, 76, 32,116,104,101,110, 13, 10,
6070     101,114,114,111,114, 40, 39, 69,114,114,111,114, 32,105,110,
6071      32,102,117,110, 99,116,105,111,110, 32, 71,101,116, 78,101,
6072      97,114,101,115,116, 80,111,105,110,116,115, 73,100,115, 58,
6073      32,121,111,117, 32,104, 97,118,101, 32,115,112,101, 99,105,
6074     102,105,101,100, 32,119,114,111,110,103, 32, 73, 68, 32,102,
6075     111,114, 32,103,114, 97,112,104,105, 99, 97,108, 32,115,117,
6076     114,102, 97, 99,101, 39, 44, 32, 50, 41, 13, 10,101,110,100,
6077      13, 10,101,110,100, 13, 10,102,117,110, 99,116,105,111,110,
6078      32, 85,112,100, 97,116,101, 66,105,116,109, 97,112, 40,103,
6079     114, 97,112,104,105, 99, 97,108, 83,117,114,102, 97, 99,101,
6080      73, 68, 44, 32, 98,105,116,109, 97,112, 73, 68, 41, 13, 10,
6081     105,102, 32,116,121,112,101, 40,103,114, 97,112,104,105, 99,
6082      97,108, 83,117,114,102, 97, 99,101, 73, 68, 41, 32,126, 61,
6083      32, 39,110,117,109, 98,101,114, 39, 32,116,104,101,110, 13,
6084      10,101,114,114,111,114, 40, 39, 70,105,114,115,116, 32, 97,
6085     114,103,117,109,101,110,116, 32,102,111,114, 32, 85,112,100,
6086      97,116,101, 66,105,116,109, 97,112, 32,109,117,115,116, 32,
6087     104, 97,118,101, 32,116,121,112,101, 32,110,117,109, 98,101,
6088     114, 32, 40, 73, 68, 32,102,111,114, 32,103,114, 97,112,104,
6089     105, 99, 97,108, 32,115,117,114,102, 97, 99,101, 41, 39, 44,
6090      32, 50, 41, 13, 10,101,110,100, 13, 10,105,102, 32,116,121,
6091     112,101, 40, 98,105,116,109, 97,112, 73, 68, 41, 32,126, 61,
6092      32, 39,110,117,109, 98,101,114, 39, 32,116,104,101,110, 13,
6093      10,101,114,114,111,114, 40, 39, 83,101, 99,111,110,100, 32,
6094      97,114,103,117,109,101,110,116, 32,102,111,114, 32, 85,112,
6095     100, 97,116,101, 66,105,116,109, 97,112, 32,109,117,115,116,
6096      32,104, 97,118,101, 32,116,121,112,101, 32,110,117,109, 98,
6097     101,114, 32, 40,110,101,119, 32, 73, 68, 32,102,111,114, 32,
6098      98,105,116,109, 97,112, 41, 39, 44, 32, 50, 41, 13, 10,101,
6099     110,100, 13, 10,108,111, 99, 97,108, 32,114,101,115, 32, 61,
6100      32,115, 99,101,110,101, 58, 85,112,100, 97,116,101, 66,105,
6101     116,109, 97,112, 40,103,114, 97,112,104,105, 99, 97,108, 83,
6102     117,114,102, 97, 99,101, 73, 68, 44, 32, 98,105,116,109, 97,
6103     112, 73, 68, 41, 13, 10,105,102, 32,114,101,115, 32, 61, 61,
6104      32,102, 97,108,115,101, 32,116,104,101,110, 13, 10,101,114,
6105     114,111,114, 40, 39, 69,114,114,111,114, 32,105,110, 32,102,
6106     117,110, 99,116,105,111,110, 32, 85,112,100, 97,116,101, 66,
6107     105,116,109, 97,112, 58, 32,121,111,117, 32,115,112,101, 99,
6108     105,102,105,101,100, 32,119,114,111,110,103, 32,103,114, 97,
6109     112,104,105, 99, 97,108, 32,115,117,114,102, 97, 99,101, 32,
6110     105,100, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,101,
6111     110,100, 13, 10,102,117,110, 99,116,105,111,110, 32, 95,117,
6112     115,101,114, 95,112,114,105,110,116, 40, 46, 46, 46, 41, 13,
6113      10,115,116,114, 32, 61, 32, 39, 39, 13, 10,102,111,114, 32,
6114     105, 32, 61, 32, 49, 44, 32, 97,114,103, 46,110, 45, 49, 32,
6115     100,111, 13, 10,115,116,114, 32, 61, 32,115,116,114, 32, 46,
6116      46, 32,116,111,115,116,114,105,110,103, 40, 97,114,103, 91,
6117     105, 93, 41, 32, 46, 46, 32, 39, 92,116, 39, 13, 10,101,110,
6118     100, 13, 10,115,116,114, 32, 61, 32,115,116,114, 32, 46, 46,
6119      32,116,111,115,116,114,105,110,103, 40, 97,114,103, 91, 97,
6120     114,103, 46,110, 93, 41, 32, 46, 46, 32, 39, 92,110, 39, 13,
6121      10, 69,102,102,101, 99,116, 77,111,100,101,108, 83, 99,114,
6122     105,112,116, 58, 80,114,105,110,116, 76,117, 97, 73,110,102,
6123     111, 40,115,116,114, 41, 13, 10,101,110,100, 13, 10,112,114,
6124     105,110,116, 32, 61, 32, 95,117,115,101,114, 95,112,114,105,
6125     110,116, 13, 10,102,117,110, 99,116,105,111,110, 32, 67,114,
6126     101, 97,116,101, 86,101, 99,116,111,114, 51, 40,120, 44, 32,
6127     121, 44, 32,122, 41, 13, 10,105,102, 32,116,121,112,101, 40,
6128     120, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114, 39, 32,
6129      97,110,100, 32,116,121,112,101, 40,121, 41, 32, 61, 61, 32,
6130      39,110,117,109, 98,101,114, 39, 32, 97,110,100, 32,116,121,
6131     112,101, 40,122, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,
6132     114, 39, 32,116,104,101,110, 13, 10,114,101,116,117,114,110,
6133      32, 86,101, 99,116,111,114, 51, 40,120, 44, 32,121, 44, 32,
6134     122, 41, 13, 10,101,108,115,101, 13, 10,101,114,114,111,114,
6135      40, 39, 65,108,108, 32, 97,114,103,117,109,101,110,116,115,
6136      32,102,111,114, 32, 67,114,101, 97,116,101, 86,101, 99,116,
6137     111,114, 51, 32,109,117,115,116, 32,104, 97,118,101, 32,116,
6138     121,112,101, 32,110,117,109, 98,101,114, 39, 44, 32, 50, 41,
6139      13, 10,101,110,100, 13, 10,101,110,100, 13, 10,102,117,110,
6140      99,116,105,111,110, 32, 67,114,101, 97,116,101, 80,111,105,
6141     110,116, 40,120, 44, 32,121, 41, 13, 10,105,102, 32,116,121,
6142     112,101, 40,120, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,
6143     114, 39, 32, 97,110,100, 32,116,121,112,101, 40,121, 41, 32,
6144      61, 61, 32, 39,110,117,109, 98,101,114, 39, 32,116,104,101,
6145     110, 13, 10,114,101,116,117,114,110, 32, 86,101, 99,116,111,
6146     114, 50, 40,120, 44, 32,121, 41, 13, 10,101,108,115,101, 13,
6147      10,101,114,114,111,114, 40, 39, 65,108,108, 32, 97,114,103,
6148     117,109,101,110,116,115, 32,102,111,114, 32, 67,114,101, 97,
6149     116,101, 80,111,105,110,116, 32,109,117,115,116, 32,104, 97,
6150     118,101, 32,116,121,112,101, 32,110,117,109, 98,101,114, 39,
6151      44, 32, 50, 41, 13, 10,101,110,100, 13, 10,101,110,100, 13,
6152      10,102,117,110, 99,116,105,111,110, 32, 67,114,101, 97,116,
6153     101, 77, 97,116,114,105,120, 52, 40,109, 48, 44, 32,109, 49,
6154      44, 32,109, 50, 44, 32,109, 51, 44, 32,109, 52, 44, 32,109,
6155      53, 44, 32,109, 54, 44, 32,109, 55, 44, 32,109, 56, 44, 32,
6156     109, 57, 44, 32,109, 49, 48, 44, 32,109, 49, 49, 44, 32,109,
6157      49, 50, 44, 32,109, 49, 51, 44, 32,109, 49, 52, 44, 32,109,
6158      49, 53, 41, 13, 10,105,102, 32,109, 48, 32, 61, 61, 32,110,
6159     105,108, 32,116,104,101,110, 13, 10,114,101,116,117,114,110,
6160      32, 76,117, 97, 77, 97,116,114,105,120, 52, 58,110,101,119,
6161      95,108,111, 99, 97,108, 40, 41, 32, 13, 10,101,108,115,101,
6162     105,102, 32, 40,116,121,112,101, 40,109, 48, 41, 32, 61, 61,
6163      32, 39,110,117,109, 98,101,114, 39, 32,111,114, 32,116,111,
6164     108,117, 97, 46,116,121,112,101, 40,109, 48, 41, 32, 61, 61,
6165      32, 39, 76,117, 97, 77, 97,116,114,105,120, 52, 39, 41, 32,
6166      97,110,100, 32,109, 49, 32, 61, 61, 32,110,105,108, 32,116,
6167     104,101,110, 13, 10,114,101,116,117,114,110, 32, 76,117, 97,
6168      77, 97,116,114,105,120, 52, 58,110,101,119, 95,108,111, 99,
6169      97,108, 40,109, 48, 41, 13, 10,101,108,115,101,105,102, 32,
6170     116,121,112,101, 40,109, 48, 41, 32, 61, 61, 32, 39,110,117,
6171     109, 98,101,114, 39, 32, 97,110,100, 32,116,121,112,101, 40,
6172     109, 49, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114, 39,
6173      32, 97,110,100, 32,116,121,112,101, 40,109, 50, 41, 32, 61,
6174      61, 32, 39,110,117,109, 98,101,114, 39, 32, 97,110,100, 32,
6175     116,121,112,101, 40,109, 51, 41, 32, 61, 61, 32, 39,110,117,
6176     109, 98,101,114, 39, 32, 97,110,100, 32,116,121,112,101, 40,
6177     109, 52, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114, 39,
6178      32, 97,110,100, 32,116,121,112,101, 40,109, 53, 41, 32, 61,
6179      61, 32, 39,110,117,109, 98,101,114, 39, 32, 97,110,100, 32,
6180     116,121,112,101, 40,109, 54, 41, 32, 61, 61, 32, 39,110,117,
6181     109, 98,101,114, 39, 32, 97,110,100, 32,116,121,112,101, 40,
6182     109, 55, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114, 39,
6183      32, 97,110,100, 32,116,121,112,101, 40,109, 56, 41, 32, 61,
6184      61, 32, 39,110,117,109, 98,101,114, 39, 32, 97,110,100, 32,
6185     116,121,112,101, 40,109, 57, 41, 32, 61, 61, 32, 39,110,117,
6186     109, 98,101,114, 39, 32, 97,110,100, 32,116,121,112,101, 40,
6187     109, 49, 48, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114,
6188      39, 32, 97,110,100, 32,116,121,112,101, 40,109, 49, 49, 41,
6189      32, 61, 61, 32, 39,110,117,109, 98,101,114, 39, 32, 97,110,
6190     100, 32,116,121,112,101, 40,109, 49, 50, 41, 32, 61, 61, 32,
6191      39,110,117,109, 98,101,114, 39, 32, 97,110,100, 32,116,121,
6192     112,101, 40,109, 49, 51, 41, 32, 61, 61, 32, 39,110,117,109,
6193      98,101,114, 39, 32, 97,110,100, 32,116,121,112,101, 40,109,
6194      49, 52, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114, 39,
6195      32, 97,110,100, 32,116,121,112,101, 40,109, 49, 53, 41, 32,
6196      61, 61, 32, 39,110,117,109, 98,101,114, 39, 32,116,104,101,
6197     110, 13, 10,114,101,116,117,114,110, 32, 76,117, 97, 77, 97,
6198     116,114,105,120, 52, 58,110,101,119, 95,108,111, 99, 97,108,
6199      40,109, 48, 44, 32,109, 49, 44, 32,109, 50, 44, 32,109, 51,
6200      44, 32,109, 52, 44, 32,109, 53, 44, 32,109, 54, 44, 32,109,
6201      55, 44, 32,109, 56, 44, 32,109, 57, 44, 32,109, 49, 48, 44,
6202      32,109, 49, 49, 44, 32,109, 49, 50, 44, 32,109, 49, 51, 44,
6203      32,109, 49, 52, 44, 32,109, 49, 53, 41, 13, 10,101,108,115,
6204     101, 13, 10,101,114,114,111,114, 40, 39, 87,114,111,110,103,
6205      32,110,117,109, 98,101,114, 32,111,114, 32,116,121,112,101,
6206      32,111,102, 32,112, 97,114, 97,109,101,116,101,114,115, 32,
6207     102,111,114, 32, 67,114,101, 97,116,101, 77, 97,116,114,105,
6208     120, 52, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,101,
6209     110,100, 13, 10, 45, 45, 45, 45, 45, 45, 45, 45, 45,32
6210    };
6211    tolua_dobuffer(tolua_S,(char*)B,sizeof(B),"tolua embedded: ./OtherFunctions.lua");
6212    lua_settop(tolua_S, top);
6213   } /* end of embedded lua code */
6214
6215
6216   { /* begin embedded lua code */
6217    int top = lua_gettop(tolua_S);
6218    static const unsigned char B[] = {
6219     10,102,117,110, 99,116,105,111,110, 32, 71,101,116, 73,110,
6220     116,101,114,112,111,108, 97,116,101,100, 86, 97,108,117,101,
6221      40, 95,115,111,117,114, 99,101, 44, 32, 95,116, 97,114,103,
6222     101,116, 44, 32, 69,102,102,101, 99,116, 84,105,109,101, 80,
6223      97,115,115,101,100, 44, 32, 69,102,102,101, 99,116, 68,117,
6224     114, 97,116,105,111,110, 44, 32, 73,110,116,101,114,112,111,
6225     108, 97,116,111,114, 41, 13, 10,108,111, 99, 97,108, 32,115,
6226     111,117,114, 99,101, 84,121,112,101, 32, 61, 32,116,111,108,
6227     117, 97, 46,116,121,112,101, 40, 95,115,111,117,114, 99,101,
6228      41, 13, 10,105,102, 32,115,111,117,114, 99,101, 84,121,112,
6229     101, 32,126, 61, 32, 39,110,117,109, 98,101,114, 39, 32, 97,
6230     110,100, 32,115,111,117,114, 99,101, 84,121,112,101, 32,126,
6231      61, 32, 39, 86,101, 99,116,111,114, 51, 39, 32, 97,110,100,
6232      32,115,111,117,114, 99,101, 84,121,112,101, 32,126, 61, 32,
6233      39, 99,111,110,115,116, 32, 86,101, 99,116,111,114, 51, 39,
6234      32, 97,110,100, 32,115,111,117,114, 99,101, 84,121,112,101,
6235      32,126, 61, 32, 39, 86,101, 99,116,111,114, 50, 39, 32, 97,
6236     110,100, 32,115,111,117,114, 99,101, 84,121,112,101, 32,126,
6237      61, 32, 39, 99,111,110,115,116, 32, 86,101, 99,116,111,114,
6238      50, 39, 32,116,104,101,110, 13, 10,101,114,114,111,114, 40,
6239      39, 70,105,114,115,116, 32, 97,114,103,117,109,101,110,116,
6240      32,102,111,114, 32, 71,101,116, 73,110,116,101,114,112,111,
6241     108, 97,116,101,100, 86, 97,108,117,101, 32,109,117,115,116,
6242      32,104, 97,118,101, 32,111,110,101, 32,111,102, 32,116,104,
6243     101, 32,116,121,112,101,115, 58, 32,110,117,109, 98,101,114,
6244      44, 32, 86,101, 99,116,111,114, 51, 32,111,114, 32, 86,101,
6245      99,116,111,114, 50, 39, 44, 32, 50, 41, 13, 10,101,110,100,
6246      13, 10,108,111, 99, 97,108, 32,115,111,117,114, 99,101, 84,
6247     121,112,101, 67,111,110,115,116, 13, 10,108,111, 99, 97,108,
6248      32,114,101,115,117,108,116, 83,101, 97, 99,104, 32, 61, 32,
6249     115,116,114,105,110,103, 46,102,105,110,100, 40,115,111,117,
6250     114, 99,101, 84,121,112,101, 44, 32, 39, 99,111,110,115,116,
6251      32, 39, 41, 13, 10,105,102, 32,114,101,115,117,108,116, 83,
6252     101, 97, 99,104, 32, 61, 61, 32,110,105,108, 32,116,104,101,
6253     110, 13, 10,115,111,117,114, 99,101, 84,121,112,101, 67,111,
6254     110,115,116, 32, 61, 32, 39, 99,111,110,115,116, 32, 39, 32,
6255      46, 46, 32,115,111,117,114, 99,101, 84,121,112,101, 13, 10,
6256     101,108,115,101, 32, 13, 10,115,111,117,114, 99,101, 84,121,
6257     112,101, 67,111,110,115,116, 32, 61, 32,115,116,114,105,110,
6258     103, 46,115,117, 98, 40,115,111,117,114, 99,101, 84,121,112,
6259     101, 44, 32, 55, 41, 13, 10,101,110,100, 13, 10, 13, 10,108,
6260     111, 99, 97,108, 32,116, 97,114,103,101,116, 84,121,112,101,
6261      32, 61, 32,116,111,108,117, 97, 46,116,121,112,101, 40, 95,
6262     116, 97,114,103,101,116, 41, 13, 10,105,102, 32,116, 97,114,
6263     103,101,116, 84,121,112,101, 32,126, 61, 32,115,111,117,114,
6264      99,101, 84,121,112,101, 32, 97,110,100, 32,116, 97,114,103,
6265     101,116, 84,121,112,101, 32,126, 61, 32,115,111,117,114, 99,
6266     101, 84,121,112,101, 67,111,110,115,116, 32,116,104,101,110,
6267      13, 10,101,114,114,111,114, 40, 39, 70,105,114,115,116, 32,
6268      97,110,100, 32,115,101, 99,111,110,100, 32, 97,114,103,117,
6269     109,101,110,116,115, 32,102,111,114, 32, 71,101,116, 73,110,
6270     116,101,114,112,111,108, 97,116,101,100, 86, 97,108,117,101,
6271      32,109,117,115,116, 32,104, 97,118,101, 32,115, 97,109,101,
6272      32,116,121,112,101,115, 39, 44, 32, 50, 41, 13, 10,101,110,
6273     100, 13, 10,105,102, 32,116,121,112,101, 40, 69,102,102,101,
6274      99,116, 84,105,109,101, 80, 97,115,115,101,100, 41, 32,126,
6275      61, 32, 39,110,117,109, 98,101,114, 39, 32,116,104,101,110,
6276      13, 10,101,114,114,111,114, 40, 39, 84,104,105,114,100, 32,
6277      97,114,103,117,109,101,110,116, 32,102,111,114, 32, 71,101,
6278     116, 73,110,116,101,114,112,111,108, 97,116,101,100, 86, 97,
6279     108,117,101, 32,109,117,115,116, 32,104, 97,118,101, 32,110,
6280     117,109, 98,101,114, 32,116,121,112,101, 39, 44, 32, 50, 41,
6281      13, 10,101,110,100, 13, 10,105,102, 32,116,121,112,101, 40,
6282      69,102,102,101, 99,116, 68,117,114, 97,116,105,111,110, 41,
6283      32,126, 61, 32, 39,110,117,109, 98,101,114, 39, 32,116,104,
6284     101,110, 13, 10,101,114,114,111,114, 40, 39, 70,111,117,114,
6285     116,104, 32, 97,114,103,117,109,101,110,116, 32,102,111,114,
6286      32, 71,101,116, 73,110,116,101,114,112,111,108, 97,116,101,
6287     100, 86, 97,108,117,101, 32,109,117,115,116, 32,104, 97,118,
6288     101, 32,110,117,109, 98,101,114, 32,116,121,112,101, 39, 44,
6289      32, 50, 41, 13, 10,101,110,100, 13, 10, 13, 10,105,102, 32,
6290      73,110,116,101,114,112,111,108, 97,116,111,114, 32, 61, 61,
6291      32,110,105,108, 32,116,104,101,110, 13, 10, 73,110,116,101,
6292     114,112,111,108, 97,116,111,114, 32, 61, 32, 76,105,110,101,
6293      97,114, 13, 10,101,110,100, 13, 10,105,102, 32,116,121,112,
6294     101, 40, 73,110,116,101,114,112,111,108, 97,116,111,114, 41,
6295      32,126, 61, 32, 39,102,117,110, 99,116,105,111,110, 39, 32,
6296     116,104,101,110, 13, 10,101,114,114,111,114, 40, 39, 70,105,
6297     102,116,104, 32, 97,114,103,117,109,101,110,116, 32,102,111,
6298     114, 32, 71,101,116, 73,110,116,101,114,112,111,108, 97,116,
6299     101,100, 86, 97,108,117,101, 32,115,104,111,117,108,100, 32,
6300      98,101, 32, 97, 32,102,117,110, 99,116,105,111,110, 32, 40,
6301     102,111,114, 32,101,120, 97,109,112,108,101, 32, 69, 97,115,
6302     101, 73,110, 79,117,116, 41, 32,111,114, 32,110,105,108, 39,
6303      44, 32, 50, 41, 13, 10,101,110,100, 13, 10, 13, 10,105,102,
6304      32, 69,102,102,101, 99,116, 68,117,114, 97,116,105,111,110,
6305      32, 62, 32, 49,101, 45, 52, 32,116,104,101,110, 13, 10,114,
6306     101,116,117,114,110, 32, 95,115,111,117,114, 99,101, 32, 43,
6307      32, 40, 95,116, 97,114,103,101,116, 32, 45, 32, 95,115,111,
6308     117,114, 99,101, 41, 32, 42, 32, 40, 73,110,116,101,114,112,
6309     111,108, 97,116,111,114, 40, 69,102,102,101, 99,116, 84,105,
6310     109,101, 80, 97,115,115,101,100, 44, 32, 69,102,102,101, 99,
6311     116, 68,117,114, 97,116,105,111,110, 41, 32, 47, 32, 69,102,
6312     102,101, 99,116, 68,117,114, 97,116,105,111,110, 41, 13, 10,
6313     101,108,115,101, 13, 10,101,114,114,111,114, 40, 39, 70,111,
6314     117,114,116,104, 32, 97,114,103,117,109,101,110,116, 32,102,
6315     111,114, 32, 71,101,116, 73,110,116,101,114,112,111,108, 97,
6316     116,101,100, 86, 97,108,117,101, 32, 40,101,102,102,101, 99,
6317     116, 32,100,117,114, 97,116,105,111,110, 41, 32,115,104,111,
6318     117,108,100, 32, 98,101, 32, 97, 32,112,111,115,105,116,105,
6319     118,101, 32, 40,100,117,114, 97,116,105,111,110, 32, 62, 32,
6320      48, 41, 39, 44, 32, 50, 41, 13, 10,101,110,100, 32, 13, 10,
6321     101,110,100, 13, 10,102,117,110, 99,116,105,111,110, 32, 76,
6322     105,110,101, 97,114, 40, 69,102,102,101, 99,116, 84,105,109,
6323     101, 80, 97,115,115,101,100, 44, 32, 69,102,102,101, 99,116,
6324      68,117,114, 97,116,105,111,110, 41, 13, 10,105,102, 32,116,
6325     121,112,101, 40, 69,102,102,101, 99,116, 84,105,109,101, 80,
6326      97,115,115,101,100, 41, 32,126, 61, 32, 39,110,117,109, 98,
6327     101,114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,114,
6328      40, 39, 70,105,114,115,116, 32, 97,114,103,117,109,101,110,
6329     116, 32,102,111,114, 32, 76,105,110,101, 97,114, 32,109,117,
6330     115,116, 32,104, 97,118,101, 32,110,117,109, 98,101,114, 32,
6331     116,121,112,101, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13,
6332      10,114,101,116,117,114,110, 32, 69,102,102,101, 99,116, 84,
6333     105,109,101, 80, 97,115,115,101,100, 13, 10,101,110,100, 13,
6334      10, 13, 10,102,117,110, 99,116,105,111,110, 32, 68,105,115,
6335      99,114,101,116,101, 40, 69,102,102,101, 99,116, 84,105,109,
6336     101, 80, 97,115,115,101,100, 44, 32, 69,102,102,101, 99,116,
6337      68,117,114, 97,116,105,111,110, 41, 13, 10,105,102, 32,116,
6338     121,112,101, 40, 69,102,102,101, 99,116, 84,105,109,101, 80,
6339      97,115,115,101,100, 41, 32,126, 61, 32, 39,110,117,109, 98,
6340     101,114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,114,
6341      40, 39, 70,105,114,115,116, 32, 97,114,103,117,109,101,110,
6342     116, 32,102,111,114, 32, 68,105,115, 99,114,101,116,101, 32,
6343     109,117,115,116, 32,104, 97,118,101, 32,110,117,109, 98,101,
6344     114, 32,116,121,112,101, 39, 44, 32, 50, 41, 13, 10,101,110,
6345     100, 13, 10,105,102, 32,116,121,112,101, 40, 69,102,102,101,
6346      99,116, 68,117,114, 97,116,105,111,110, 41, 32,126, 61, 32,
6347      39,110,117,109, 98,101,114, 39, 32,116,104,101,110, 13, 10,
6348     101,114,114,111,114, 40, 39, 83,101, 99,111,110,100, 32, 97,
6349     114,103,117,109,101,110,116, 32,102,111,114, 32, 68,105,115,
6350      99,114,101,116,101, 32,109,117,115,116, 32,104, 97,118,101,
6351      32,110,117,109, 98,101,114, 32,116,121,112,101, 39, 44, 32,
6352      50, 41, 13, 10,101,110,100, 13, 10, 13, 10,105,102, 32, 69,
6353     102,102,101, 99,116, 84,105,109,101, 80, 97,115,115,101,100,
6354      32, 60, 32, 69,102,102,101, 99,116, 68,117,114, 97,116,105,
6355     111,110, 32,116,104,101,110, 13, 10,114,101,116,117,114,110,
6356      32, 48, 13, 10,101,108,115,101, 32, 13, 10,114,101,116,117,
6357     114,110, 32, 69,102,102,101, 99,116, 68,117,114, 97,116,105,
6358     111,110, 13, 10,101,110,100, 13, 10,101,110,100, 13, 10,102,
6359     117,110, 99,116,105,111,110, 32, 69, 97,115,101, 73,110, 40,
6360      69,102,102,101, 99,116, 84,105,109,101, 80, 97,115,115,101,
6361     100, 44, 32, 69,102,102,101, 99,116, 68,117,114, 97,116,105,
6362     111,110, 41, 13, 10,105,102, 32,116,121,112,101, 40, 69,102,
6363     102,101, 99,116, 84,105,109,101, 80, 97,115,115,101,100, 41,
6364      32,126, 61, 32, 39,110,117,109, 98,101,114, 39, 32,116,104,
6365     101,110, 13, 10,101,114,114,111,114, 40, 39, 70,105,114,115,
6366     116, 32, 97,114,103,117,109,101,110,116, 32,102,111,114, 32,
6367      69, 97,115,101, 73,110, 32,109,117,115,116, 32,104, 97,118,
6368     101, 32,110,117,109, 98,101,114, 32,116,121,112,101, 39, 44,
6369      32, 50, 41, 13, 10,101,110,100, 13, 10,105,102, 32,116,121,
6370     112,101, 40, 69,102,102,101, 99,116, 68,117,114, 97,116,105,
6371     111,110, 41, 32,126, 61, 32, 39,110,117,109, 98,101,114, 39,
6372      32,116,104,101,110, 13, 10,101,114,114,111,114, 40, 39, 83,
6373     101, 99,111,110,100, 32, 97,114,103,117,109,101,110,116, 32,
6374     102,111,114, 32, 69, 97,115,101, 73,110, 32,109,117,115,116,
6375      32,104, 97,118,101, 32,110,117,109, 98,101,114, 32,116,121,
6376     112,101, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10, 13,
6377      10,105,102, 32, 69,102,102,101, 99,116, 84,105,109,101, 80,
6378      97,115,115,101,100, 32, 62, 32, 69,102,102,101, 99,116, 68,
6379     117,114, 97,116,105,111,110, 32,116,104,101,110, 13, 10, 69,
6380     102,102,101, 99,116, 84,105,109,101, 80, 97,115,115,101,100,
6381      32, 61, 32, 69,102,102,101, 99,116, 68,117,114, 97,116,105,
6382     111,110, 13, 10,101,110,100, 13, 10, 13, 10,114,101,116,117,
6383     114,110, 32, 45,109, 97,116,104, 46,115,113,114,116, 40, 69,
6384     102,102,101, 99,116, 68,117,114, 97,116,105,111,110, 32, 42,
6385      32, 69,102,102,101, 99,116, 68,117,114, 97,116,105,111,110,
6386      32, 45, 32, 69,102,102,101, 99,116, 84,105,109,101, 80, 97,
6387     115,115,101,100, 32, 42, 32, 69,102,102,101, 99,116, 84,105,
6388     109,101, 80, 97,115,115,101,100, 41, 32, 43, 32, 69,102,102,
6389     101, 99,116, 68,117,114, 97,116,105,111,110, 13, 10,101,110,
6390     100, 13, 10,102,117,110, 99,116,105,111,110, 32, 69, 97,115,
6391     101, 79,117,116, 40, 69,102,102,101, 99,116, 84,105,109,101,
6392      80, 97,115,115,101,100, 44, 32, 69,102,102,101, 99,116, 68,
6393     117,114, 97,116,105,111,110, 41, 13, 10,105,102, 32,116,121,
6394     112,101, 40, 69,102,102,101, 99,116, 84,105,109,101, 80, 97,
6395     115,115,101,100, 41, 32,126, 61, 32, 39,110,117,109, 98,101,
6396     114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,114, 40,
6397      39, 70,105,114,115,116, 32, 97,114,103,117,109,101,110,116,
6398      32,102,111,114, 32, 69, 97,115,101, 79,117,116, 32,109,117,
6399     115,116, 32,104, 97,118,101, 32,110,117,109, 98,101,114, 32,
6400     116,121,112,101, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13,
6401      10,105,102, 32,116,121,112,101, 40, 69,102,102,101, 99,116,
6402      68,117,114, 97,116,105,111,110, 41, 32,126, 61, 32, 39,110,
6403     117,109, 98,101,114, 39, 32,116,104,101,110, 13, 10,101,114,
6404     114,111,114, 40, 39, 83,101, 99,111,110,100, 32, 97,114,103,
6405     117,109,101,110,116, 32,102,111,114, 32, 69, 97,115,101, 79,
6406     117,116, 32,109,117,115,116, 32,104, 97,118,101, 32,110,117,
6407     109, 98,101,114, 32,116,121,112,101, 39, 44, 32, 50, 41, 13,
6408      10,101,110,100, 13, 10, 13, 10,105,102, 32, 69,102,102,101,
6409      99,116, 84,105,109,101, 80, 97,115,115,101,100, 32, 62, 32,
6410      69,102,102,101, 99,116, 68,117,114, 97,116,105,111,110, 32,
6411     116,104,101,110, 13, 10, 69,102,102,101, 99,116, 84,105,109,
6412     101, 80, 97,115,115,101,100, 32, 61, 32, 69,102,102,101, 99,
6413     116, 68,117,114, 97,116,105,111,110, 13, 10,101,110,100, 13,
6414      10, 13, 10,114,101,116,117,114,110, 32,109, 97,116,104, 46,
6415     115,113,114,116, 40, 69,102,102,101, 99,116, 68,117,114, 97,
6416     116,105,111,110, 32, 42, 32, 69,102,102,101, 99,116, 68,117,
6417     114, 97,116,105,111,110, 32, 45, 32, 40, 69,102,102,101, 99,
6418     116, 84,105,109,101, 80, 97,115,115,101,100, 32, 45, 32, 69,
6419     102,102,101, 99,116, 68,117,114, 97,116,105,111,110, 41, 32,
6420      42, 32, 40, 69,102,102,101, 99,116, 84,105,109,101, 80, 97,
6421     115,115,101,100, 32, 45, 32, 69,102,102,101, 99,116, 68,117,
6422     114, 97,116,105,111,110, 41, 41, 13, 10,101,110,100, 13, 10,
6423     102,117,110, 99,116,105,111,110, 32, 69, 97,115,101, 73,110,
6424      79,117,116, 40, 69,102,102,101, 99,116, 84,105,109,101, 80,
6425      97,115,115,101,100, 44, 32, 69,102,102,101, 99,116, 68,117,
6426     114, 97,116,105,111,110, 41, 13, 10,105,102, 32,116,121,112,
6427     101, 40, 69,102,102,101, 99,116, 84,105,109,101, 80, 97,115,
6428     115,101,100, 41, 32,126, 61, 32, 39,110,117,109, 98,101,114,
6429      39, 32,116,104,101,110, 13, 10,101,114,114,111,114, 40, 39,
6430      70,105,114,115,116, 32, 97,114,103,117,109,101,110,116, 32,
6431     102,111,114, 32, 69, 97,115,101, 73,110, 79,117,116, 32,109,
6432     117,115,116, 32,104, 97,118,101, 32,110,117,109, 98,101,114,
6433      32,116,121,112,101, 39, 44, 32, 50, 41, 13, 10,101,110,100,
6434      13, 10,105,102, 32,116,121,112,101, 40, 69,102,102,101, 99,
6435     116, 68,117,114, 97,116,105,111,110, 41, 32,126, 61, 32, 39,
6436     110,117,109, 98,101,114, 39, 32,116,104,101,110, 13, 10,101,
6437     114,114,111,114, 40, 39, 83,101, 99,111,110,100, 32, 97,114,
6438     103,117,109,101,110,116, 32,102,111,114, 32, 69, 97,115,101,
6439      73,110, 79,117,116, 32,109,117,115,116, 32,104, 97,118,101,
6440      32,110,117,109, 98,101,114, 32,116,121,112,101, 39, 44, 32,
6441      50, 41, 13, 10,101,110,100, 13, 10, 13, 10,105,102, 32, 69,
6442     102,102,101, 99,116, 84,105,109,101, 80, 97,115,115,101,100,
6443      32, 62, 32, 69,102,102,101, 99,116, 68,117,114, 97,116,105,
6444     111,110, 32,116,104,101,110, 13, 10, 69,102,102,101, 99,116,
6445      84,105,109,101, 80, 97,115,115,101,100, 32, 61, 32, 69,102,
6446     102,101, 99,116, 68,117,114, 97,116,105,111,110, 13, 10,101,
6447     110,100, 13, 10, 13, 10,108,111, 99, 97,108, 32,100,117,114,
6448      50, 32, 61, 32, 69,102,102,101, 99,116, 68,117,114, 97,116,
6449     105,111,110, 32, 47, 32, 50, 13, 10,105,102, 32, 69,102,102,
6450     101, 99,116, 84,105,109,101, 80, 97,115,115,101,100, 32, 60,
6451      32,100,117,114, 50, 32,116,104,101,110, 32, 13, 10,114,101,
6452     116,117,114,110, 32, 45,109, 97,116,104, 46,115,113,114,116,
6453      40,100,117,114, 50, 32, 42, 32,100,117,114, 50, 32, 45, 32,
6454      69,102,102,101, 99,116, 84,105,109,101, 80, 97,115,115,101,
6455     100, 32, 42, 32, 69,102,102,101, 99,116, 84,105,109,101, 80,
6456      97,115,115,101,100, 41, 32, 43, 32,100,117,114, 50, 13, 10,
6457     101,108,115,101, 32, 13, 10,114,101,116,117,114,110, 32,109,
6458      97,116,104, 46,115,113,114,116, 40,100,117,114, 50, 32, 42,
6459      32,100,117,114, 50, 32, 45, 32, 40, 69,102,102,101, 99,116,
6460      84,105,109,101, 80, 97,115,115,101,100, 32, 45, 32, 69,102,
6461     102,101, 99,116, 68,117,114, 97,116,105,111,110, 41, 32, 42,
6462      32, 40, 69,102,102,101, 99,116, 84,105,109,101, 80, 97,115,
6463     115,101,100, 32, 45, 32, 69,102,102,101, 99,116, 68,117,114,
6464      97,116,105,111,110, 41, 41, 32, 43, 32,100,117,114, 50, 13,
6465      10,101,110,100, 13, 10,101,110,100, 13, 10, 95, 80,111,105,
6466     110,116, 48, 95, 66,101,122,105,101,114, 32, 61, 32, 86,101,
6467      99,116,111,114, 50, 40, 48, 44, 32, 48, 41, 13, 10, 95, 80,
6468     111,105,110,116, 49, 95, 66,101,122,105,101,114, 32, 61, 32,
6469      86,101, 99,116,111,114, 50, 40, 48, 46, 50, 44, 32, 50, 41,
6470      13, 10, 95, 80,111,105,110,116, 50, 95, 66,101,122,105,101,
6471     114, 32, 61, 32, 86,101, 99,116,111,114, 50, 40, 48, 46, 56,
6472      44, 32, 45, 49, 41, 32, 13, 10, 95, 80,111,105,110,116, 51,
6473      95, 66,101,122,105,101,114, 32, 61, 32, 86,101, 99,116,111,
6474     114, 50, 40, 49, 44, 32, 49, 41, 13, 10, 13, 10,102,117,110,
6475      99,116,105,111,110, 32, 83,101,116, 66,101,115,105,101,114,
6476      73,110,116,101,114,112,111,108, 97,116,111,114, 40, 80,111,
6477     105,110,116, 49, 44, 32, 80,111,105,110,116, 50, 41, 13, 10,
6478     108,111, 99, 97,108, 32,112,111,105,110,116, 49, 84,121,112,
6479     101, 32, 61, 32,116,111,108,117, 97, 46,116,121,112,101, 40,
6480      80,111,105,110,116, 49, 41, 13, 10,105,102, 32,112,111,105,
6481     110,116, 49, 84,121,112,101, 32, 61, 61, 32, 39, 86,101, 99,
6482     116,111,114, 50, 39, 32,111,114, 32,112,111,105,110,116, 49,
6483      84,121,112,101, 32, 61, 61, 32, 39, 99,111,110,115,116, 32,
6484      86,101, 99,116,111,114, 50, 39, 32,116,104,101,110, 13, 10,
6485      95, 80,111,105,110,116, 49, 95, 66,101,122,105,101,114, 46,
6486     120, 32, 61, 32, 80,111,105,110,116, 49, 46,120, 13, 10, 95,
6487      80,111,105,110,116, 49, 95, 66,101,122,105,101,114, 46,121,
6488      32, 61, 32, 80,111,105,110,116, 49, 46,121, 13, 10,101,108,
6489     115,101, 13, 10,101,114,114,111,114, 40, 39, 70,105,114,115,
6490     116, 32, 97,114,103,117,109,101,110,116, 32,102,111,114, 32,
6491      83,101,116, 66,101,115,105,101,114, 73,110,116,101,114,112,
6492     111,108, 97,116,111,114, 32,109,117,115,116, 32,104, 97,118,
6493     101, 32, 86,101, 99,116,111,114, 50, 32,116,121,112,101, 39,
6494      44, 32, 50, 41, 13, 10,101,110,100, 13, 10, 13, 10,108,111,
6495      99, 97,108, 32,112,111,105,110,116, 50, 84,121,112,101, 32,
6496      61, 32,116,111,108,117, 97, 46,116,121,112,101, 40, 80,111,
6497     105,110,116, 50, 41, 13, 10,105,102, 32,112,111,105,110,116,
6498      50, 84,121,112,101, 32, 61, 61, 32, 39, 86,101, 99,116,111,
6499     114, 50, 39, 32,111,114, 32,112,111,105,110,116, 50, 84,121,
6500     112,101, 32, 61, 61, 32, 39, 99,111,110,115,116, 32, 86,101,
6501      99,116,111,114, 50, 39, 32,116,104,101,110, 32, 13, 10, 95,
6502      80,111,105,110,116, 50, 95, 66,101,122,105,101,114, 46,120,
6503      32, 61, 32, 80,111,105,110,116, 50, 46,120, 13, 10, 95, 80,
6504     111,105,110,116, 50, 95, 66,101,122,105,101,114, 46,121, 32,
6505      61, 32, 80,111,105,110,116, 50, 46,121, 13, 10,101,108,115,
6506     101, 13, 10,101,114,114,111,114, 40, 39, 83,101, 99,111,110,
6507     100, 32, 97,114,103,117,109,101,110,116, 32,102,111,114, 32,
6508      83,101,116, 66,101,115,105,101,114, 73,110,116,101,114,112,
6509     111,108, 97,116,111,114, 32,109,117,115,116, 32,104, 97,118,
6510     101, 32, 86,101, 99,116,111,114, 50, 32,116,121,112,101, 39,
6511      44, 32, 50, 41, 13, 10,101,110,100, 13, 10,101,110,100, 13,
6512      10, 13, 10,102,117,110, 99,116,105,111,110, 32, 66,101,122,
6513     105,101,114, 40, 69,102,102,101, 99,116, 84,105,109,101, 80,
6514      97,115,115,101,100, 44, 32, 69,102,102,101, 99,116, 68,117,
6515     114, 97,116,105,111,110, 41, 13, 10,105,102, 32,116,121,112,
6516     101, 40, 69,102,102,101, 99,116, 84,105,109,101, 80, 97,115,
6517     115,101,100, 41, 32,126, 61, 32, 39,110,117,109, 98,101,114,
6518      39, 32,116,104,101,110, 13, 10,101,114,114,111,114, 40, 39,
6519      70,105,114,115,116, 32, 97,114,103,117,109,101,110,116, 32,
6520     102,111,114, 32, 66,101,122,105,101,114, 32,109,117,115,116,
6521      32,104, 97,118,101, 32,110,117,109, 98,101,114, 32,116,121,
6522     112,101, 39, 44, 32, 50, 41, 13, 10,101,110,100, 13, 10,105,
6523     102, 32,116,121,112,101, 40, 69,102,102,101, 99,116, 68,117,
6524     114, 97,116,105,111,110, 41, 32,126, 61, 32, 39,110,117,109,
6525      98,101,114, 39, 32,116,104,101,110, 13, 10,101,114,114,111,
6526     114, 40, 39, 83,101, 99,111,110,100, 32, 97,114,103,117,109,
6527     101,110,116, 32,102,111,114, 32, 66,101,122,105,101,114, 32,
6528     109,117,115,116, 32,104, 97,118,101, 32,110,117,109, 98,101,
6529     114, 32,116,121,112,101, 39, 44, 32, 50, 41, 13, 10,101,110,
6530     100, 13, 10, 13, 10,105,102, 32, 69,102,102,101, 99,116, 68,
6531     117,114, 97,116,105,111,110, 32, 60, 32, 49,101, 45, 52, 32,
6532     116,104,101,110, 13, 10,101,114,114,111,114, 40, 39, 83,101,
6533      99,111,110,100, 32, 97,114,103,117,109,101,110,116, 32,102,
6534     111,114, 32, 66,101,122,105,101,114, 32, 40,100,117,114, 97,
6535     116,105,111,110, 41, 32,115,104,111,117,108,100, 32, 98,101,
6536      32, 97, 32,112,111,115,105,116,105,118,101, 32, 40,100,117,
6537     114, 97,116,105,111,110, 32, 62, 32, 48, 41, 39, 44, 32, 50,
6538      41, 13, 10,101,110,100, 13, 10, 13, 10,105,102, 32, 69,102,
6539     102,101, 99,116, 84,105,109,101, 80, 97,115,115,101,100, 32,
6540      62, 32, 69,102,102,101, 99,116, 68,117,114, 97,116,105,111,
6541     110, 32,116,104,101,110, 13, 10, 69,102,102,101, 99,116, 84,
6542     105,109,101, 80, 97,115,115,101,100, 32, 61, 32, 69,102,102,
6543     101, 99,116, 68,117,114, 97,116,105,111,110, 13, 10,101,110,
6544     100, 13, 10, 13, 10,105,102, 32,116,111,108,117, 97, 46,116,
6545     121,112,101, 40, 95, 80,111,105,110,116, 48, 95, 66,101,122,
6546     105,101,114, 41, 32,126, 61, 32, 39, 86,101, 99,116,111,114,
6547      50, 39, 32,111,114, 32,116,111,108,117, 97, 46,116,121,112,
6548     101, 40, 95, 80,111,105,110,116, 49, 95, 66,101,122,105,101,
6549     114, 41, 32,126, 61, 32, 39, 86,101, 99,116,111,114, 50, 39,
6550      32,111,114, 32,116,111,108,117, 97, 46,116,121,112,101, 40,
6551      95, 80,111,105,110,116, 50, 95, 66,101,122,105,101,114, 41,
6552      32,126, 61, 32, 39, 86,101, 99,116,111,114, 50, 39, 32,111,
6553     114, 32,116,111,108,117, 97, 46,116,121,112,101, 40, 95, 80,
6554     111,105,110,116, 51, 95, 66,101,122,105,101,114, 41, 32,126,
6555      61, 32, 39, 86,101, 99,116,111,114, 50, 39, 32,116,104,101,
6556     110, 13, 10,101,114,114,111,114, 40, 39, 83,121,115,116,101,
6557     109, 32,101,114,114,111,114, 39, 44, 32, 50, 41, 13, 10,101,
6558     110,100, 13, 10, 13, 10,108,111, 99, 97,108, 32,116, 32, 61,
6559      32, 69,102,102,101, 99,116, 84,105,109,101, 80, 97,115,115,
6560     101,100, 32, 47, 32, 69,102,102,101, 99,116, 68,117,114, 97,
6561     116,105,111,110, 13, 10,108,111, 99, 97,108, 32,114,101,115,
6562      32, 61, 32, 40, 49, 32, 45, 32,116, 41, 32, 42, 32, 40, 49,
6563      32, 45, 32,116, 41, 32, 42, 32, 40, 49, 32, 45, 32,116, 41,
6564      32, 42, 32, 95, 80,111,105,110,116, 48, 95, 66,101,122,105,
6565     101,114, 13, 10,114,101,115, 32, 61, 32,114,101,115, 32, 43,
6566      32, 51, 32, 42, 32,116, 32, 42, 32, 40, 49, 32, 45, 32,116,
6567      41, 32, 42, 32, 40, 49, 32, 45, 32,116, 41, 32, 42, 32, 69,
6568     102,102,101, 99,116, 68,117,114, 97,116,105,111,110, 32, 42,
6569      32, 95, 80,111,105,110,116, 49, 95, 66,101,122,105,101,114,
6570      13, 10,114,101,115, 32, 61, 32,114,101,115, 32, 43, 32, 51,
6571      32, 42, 32,116, 32, 42, 32,116, 32, 42, 32, 40, 49, 32, 45,
6572      32,116, 41, 32, 42, 32, 69,102,102,101, 99,116, 68,117,114,
6573      97,116,105,111,110, 32, 42, 32, 95, 80,111,105,110,116, 50,
6574      95, 66,101,122,105,101,114, 13, 10,114,101,115, 32, 61, 32,
6575     114,101,115, 32, 43, 32,116, 32, 42, 32,116, 32, 42, 32,116,
6576      32, 42, 32, 69,102,102,101, 99,116, 68,117,114, 97,116,105,
6577     111,110, 32, 42, 32, 95, 80,111,105,110,116, 51, 95, 66,101,
6578     122,105,101,114, 13, 10,114,101,116,117,114,110, 32,114,101,
6579     115, 46,121, 13, 10,101,110,100, 13, 10, 45, 45, 45, 45, 45,
6580      45, 45, 45, 45, 45, 45, 45, 45, 45,32
6581    };
6582    tolua_dobuffer(tolua_S,(char*)B,sizeof(B),"tolua embedded: ./animation.lua");
6583    lua_settop(tolua_S, top);
6584   } /* end of embedded lua code */
6585
6586
6587   { /* begin embedded lua code */
6588    int top = lua_gettop(tolua_S);
6589    static const unsigned char B[] = {
6590     10,102,117,110, 99,116,105,111,110, 32, 65,100,100, 85,110,
6591     105,116, 76,105,103,104,116, 40,117,110,105,116, 76,105,103,
6592     104,116, 41, 10,108,111, 99, 97,108, 32,116,121,112,101, 65,
6593     114,103, 32, 61, 32,116,111,108,117, 97, 46,116,121,112,101,
6594      40,117,110,105,116, 76,105,103,104,116, 41, 10,105,102, 32,
6595     116,121,112,101, 65,114,103, 32, 61, 61, 32, 39, 80,111,105,
6596     110,116, 76,105,103,104,116, 39, 32,111,114, 32,116,121,112,
6597     101, 65,114,103, 32, 61, 61, 32, 39, 83,112,111,116, 76,105,
6598     103,104,116, 39, 32,111,114, 32,116,121,112,101, 65,114,103,
6599      32, 61, 61, 32, 39, 68,105,114,101, 99,116,105,111,110, 97,
6600     108, 76,105,103,104,116, 39, 32,116,104,101,110, 10,108,111,
6601      99, 97,108, 32,114,101,115, 32, 61, 32,115, 99,101,110,101,
6602      58, 65,100,100, 85,110,105,116, 76,105,103,104,116, 40,117,
6603     110,105,116, 76,105,103,104,116, 41, 10,105,102, 32,114,101,
6604     115, 32, 61, 61, 32,102, 97,108,115,101, 32,116,104,101,110,
6605      10,101,114,114,111,114, 40, 39, 69,114,114,111,114, 32,105,
6606     110, 32,102,117,110, 99,116,105,111,110, 32, 65,100,100, 85,
6607     110,105,116, 76,105,103,104,116, 58, 32,117,110,105,116, 32,
6608     108,105,103,104,116, 32,119,105,116,104, 32,115, 97,109,101,
6609      32,110, 97,109,101, 32,119, 97,115, 32, 97,100,100,101,100,
6610      32,101, 97,114,108,105,101,114, 39, 44, 32, 50, 41, 10,101,
6611     110,100, 10,101,108,115,101, 10,101,114,114,111,114, 40, 39,
6612      65,114,103,117,109,101,110,116, 32,102,111,114, 32, 65,100,
6613     100, 85,110,105,116, 76,105,103,104,116, 32,109,117,115,116,
6614      32,104, 97,118,101, 32,111,110,101, 32,111,102, 32,116,104,
6615     101, 32,116,121,112,101, 58, 32, 80,111,105,110,116, 76,105,
6616     103,104,116, 44, 32, 83,112,111,116, 76,105,103,104,116, 32,
6617     111,114, 32, 68,105,114,101, 99,116,105,111,110, 97,108, 76,
6618     105,103,104,116, 39, 44, 32, 50, 41, 10,101,110,100, 10,101,
6619     110,100, 10,102,117,110, 99,116,105,111,110, 32, 82,101,109,
6620     111,118,101, 85,110,105,116, 76,105,103,104,116, 40, 97,114,
6621     103, 41, 10,105,102, 32,116,121,112,101, 40, 97,114,103, 41,
6622      32, 61, 61, 32, 39,115,116,114,105,110,103, 39, 32,116,104,
6623     101,110, 10,108,111, 99, 97,108, 32,114,101,115, 32, 61, 32,
6624     115, 99,101,110,101, 58, 82,101,109,111,118,101, 85,110,105,
6625     116, 76,105,103,104,116, 40, 97,114,103, 41, 10,105,102, 32,
6626     114,101,115, 32, 61, 61, 32,102, 97,108,115,101, 32,116,104,
6627     101,110, 10,101,114,114,111,114, 40, 39, 69,114,114,111,114,
6628      32,105,110, 32,102,117,110, 99,116,105,111,110, 32, 82,101,
6629     109,111,118,101, 85,110,105,116, 76,105,103,104,116, 58, 32,
6630     117,110,105,116, 32,108,105,103,104,116, 32,119,105,116,104,
6631      32,115,112,101, 99,105,102,105,101,100, 32,110, 97,109,101,
6632      32,119, 97,115, 32,110,111,116, 32, 97,100,100,101,100, 32,
6633     105,110,116,111, 32,115, 99,101,110,101, 39, 44, 32, 50, 41,
6634      10,101,110,100, 10,101,108,115,101, 10,101,114,114,111,114,
6635      40, 39, 65,114,103,117,109,101,110,116, 32,102,111,114, 32,
6636      82,101,109,111,118,101, 85,110,105,116, 76,105,103,104,116,
6637      32,109,117,115,116, 32,104, 97,118,101, 32,115,116,114,105,
6638     110,103, 32,116,121,112,101, 39, 44, 32, 50, 41, 10,101,110,
6639     100, 10,101,110,100, 10,102,117,110, 99,116,105,111,110, 32,
6640      82,101,109,111,118,101, 65,108,108, 85,110,105,116,115, 76,
6641     105,103,104,116, 84,121,112,101, 40,115,116,114, 41, 10,108,
6642     111, 99, 97,108, 32,114,101,115, 32, 61, 32,102, 97,108,115,
6643     101, 10,105,102, 32,116,121,112,101, 40,115,116,114, 41, 32,
6644     126, 61, 32, 39,115,116,114,105,110,103, 39, 32,116,104,101,
6645     110, 10,101,114,114,111,114, 40, 39, 65,114,103,117,109,101,
6646     110,116, 32,102,111,114, 32, 82,101,109,111,118,101, 65,108,
6647     108, 85,110,105,116,115, 76,105,103,104,116, 84,121,112,101,
6648      32,109,117,115,116, 32,104, 97,118,101, 32,115,116,114,105,
6649     110,103, 32,116,121,112,101, 39, 44, 32, 50, 41, 10,101,108,
6650     115,101,105,102, 32,115,116,114, 32, 61, 61, 32, 39,112,111,
6651     105,110,116, 39, 32,116,104,101,110, 10,114,101,115, 32, 61,
6652      32,115, 99,101,110,101, 58, 82,101,109,111,118,101, 65,108,
6653     108, 85,110,105,116,115, 76,105,103,104,116, 84,121,112,101,
6654      40, 84, 89, 80, 69, 95, 85, 78, 73, 84, 95, 76, 73, 71, 72,
6655      84, 95, 80, 79, 73, 78, 84, 41, 10,101,108,115,101,105,102,
6656      32,115,116,114, 32, 61, 61, 32, 39,115,112,111,116, 39, 32,
6657     116,104,101,110, 10,114,101,115, 32, 61, 32,115, 99,101,110,
6658     101, 58, 82,101,109,111,118,101, 65,108,108, 85,110,105,116,
6659     115, 76,105,103,104,116, 84,121,112,101, 40, 84, 89, 80, 69,
6660      95, 85, 78, 73, 84, 95, 76, 73, 71, 72, 84, 95, 83, 80, 79,
6661      84, 41, 10,101,108,115,101,105,102, 32,115,116,114, 32, 61,
6662      61, 32, 39,100,105,114,101, 99,116,105,111,110, 97,108, 39,
6663      32,116,104,101,110, 10,114,101,115, 32, 61, 32,115, 99,101,
6664     110,101, 58, 82,101,109,111,118,101, 65,108,108, 85,110,105,
6665     116,115, 76,105,103,104,116, 84,121,112,101, 40, 84, 89, 80,
6666      69, 95, 85, 78, 73, 84, 95, 76, 73, 71, 72, 84, 95, 68, 73,
6667      82, 69, 67, 84, 73, 79, 78, 65, 76, 41, 10,101,108,115,101,
6668      10,101,114,114,111,114, 40, 39, 65,114,103,117,109,101,110,
6669     116, 32,102,111,114, 32, 82,101,109,111,118,101, 65,108,108,
6670      85,110,105,116,115, 76,105,103,104,116, 84,121,112,101, 32,
6671     109,117,115,116, 32,104, 97,118,101, 32,111,110,101, 32,111,
6672     102, 32,116,104,101, 32,115,116,114,105,110,103, 32,118, 97,
6673     108,117,101, 58, 32,112,111,105,110,116, 44, 32,115,112,111,
6674     116, 32,111,114, 32,100,105,114,101, 99,116,105,111,110, 97,
6675     108, 39, 44, 32, 50, 41, 10,101,110,100, 10,105,102, 32,114,
6676     101,115, 32, 61, 61, 32,102, 97,108,115,101, 32,116,104,101,
6677     110, 10,101,114,114,111,114, 40, 39, 73,110,116,101,114,110,
6678      97,108, 32,101,114,114,111,114, 39, 44, 32, 49, 41, 10,101,
6679     110,100, 10,101,110,100, 10,102,117,110, 99,116,105,111,110,
6680      32, 71,101,116, 85,110,105,116, 76,105,103,104,116, 40, 97,
6681     114,103, 41, 10,105,102, 32,116,121,112,101, 40, 97,114,103,
6682      41, 32, 61, 61, 32, 39,115,116,114,105,110,103, 39, 32,116,
6683     104,101,110, 10,108,111, 99, 97,108, 32,114,101,115, 32, 61,
6684      32,115, 99,101,110,101, 58, 71,101,116, 85,110,105,116, 76,
6685     105,103,104,116, 40, 97,114,103, 41, 10,105,102, 32,114,101,
6686     115, 46,116,121,112,101, 32, 61, 61, 32, 80,114,111,112,101,
6687     114,116,121, 67, 97,115,116, 46, 80, 79, 73, 78, 84, 95, 76,
6688      73, 71, 72, 84, 32,116,104,101,110, 10,114,101,116,117,114,
6689     110, 32,114,101,115, 46,118, 97,108,117,101, 46,112, 80,111,
6690     105,110,116, 76,105,103,104,116, 10,101,108,115,101,105,102,
6691      32,114,101,115, 46,116,121,112,101, 32, 61, 61, 32, 80,114,
6692     111,112,101,114,116,121, 67, 97,115,116, 46, 83, 80, 79, 84,
6693      95, 76, 73, 71, 72, 84, 32,116,104,101,110, 10,114,101,116,
6694     117,114,110, 32,114,101,115, 46,118, 97,108,117,101, 46,112,
6695      83,112,111,116, 76,105,103,104,116, 10,101,108,115,101,105,
6696     102, 32,114,101,115, 46,116,121,112,101, 32, 61, 61, 32, 80,
6697     114,111,112,101,114,116,121, 67, 97,115,116, 46, 68, 73, 82,
6698      69, 67, 84, 73, 79, 78, 65, 76, 95, 76, 73, 71, 72, 84, 32,
6699     116,104,101,110, 10,114,101,116,117,114,110, 32,114,101,115,
6700      46,118, 97,108,117,101, 46,112, 68,105,114,101, 99,116,105,
6701     111,110, 97,108, 76,105,103,104,116, 10,101,108,115,101, 10,
6702     101,114,114,111,114, 40, 39, 69,114,114,111,114, 32,105,110,
6703      32,102,117,110, 99,116,105,111,110, 32, 71,101,116, 85,110,
6704     105,116, 76,105,103,104,116, 58, 32,117,110,105,116, 32,108,
6705     105,103,104,116, 32,119,105,116,104, 32,115,112,101, 99,105,
6706     102,105,101,100, 32,110, 97,109,101, 32,119, 97,115, 32,110,
6707     111,116, 32, 97,100,100,101,100, 32,105,110,116,111, 32,115,
6708      99,101,110,101, 39, 44, 32, 50, 41, 10,101,110,100, 10,101,
6709     108,115,101, 10,101,114,114,111,114, 40, 39, 65,114,103,117,
6710     109,101,110,116, 32,102,111,114, 32, 71,101,116, 85,110,105,
6711     116, 76,105,103,104,116, 32,109,117,115,116, 32,104, 97,118,
6712     101, 32,115,116,114,105,110,103, 32,116,121,112,101, 39, 44,
6713      32, 50, 41, 10,101,110,100, 10,101,110,100, 10,102,117,110,
6714      99,116,105,111,110, 32, 83,101,116, 76,105,103,104,116, 65,
6715     109, 98,105,101,110,116, 67,111,108,111,117,114, 40,114,101,
6716     100, 44, 32,103,114,101,101,110, 44, 32, 98,108,117,101, 41,
6717      10,108,111, 99, 97,108, 32,116,121,112,101, 70,105,114,115,
6718     116, 65,114,103, 32, 61, 32,116,111,108,117, 97, 46,116,121,
6719     112,101, 40,114,101,100, 41, 10,105,102, 32,116,121,112,101,
6720      70,105,114,115,116, 65,114,103, 32, 61, 61, 32, 39, 86,101,
6721      99,116,111,114, 51, 39, 32,111,114, 32,116,121,112,101, 70,
6722     105,114,115,116, 65,114,103, 32, 61, 61, 32, 39, 99,111,110,
6723     115,116, 32, 86,101, 99,116,111,114, 51, 39, 32,116,104,101,
6724     110, 10,105,102, 32,103,114,101,101,110, 32, 61, 61, 32,110,
6725     105,108, 32, 97,110,100, 32, 98,108,117,101, 32, 61, 61, 32,
6726     110,105,108, 32,116,104,101,110, 10,115, 99,101,110,101, 58,
6727      83,101,116, 76,105,103,104,116, 65,109, 98,105,101,110,116,
6728      67,111,108,111,117,114, 40,114,101,100, 41, 10,101,108,115,
6729     101, 10,101,114,114,111,114, 40, 39, 87,114,111,110,103, 32,
6730     110,117,109, 98,101,114, 32,111,114, 32,116,121,112,101, 32,
6731     111,102, 32,112, 97,114, 97,109,101,116,101,114,115, 32,102,
6732     111,114, 32, 83,101,116, 76,105,103,104,116, 65,109, 98,105,
6733     101,110,116, 67,111,108,111,117,114, 32, 40,115,101,101, 32,
6734     102,114,111,109, 32,115,101, 99,111,110,100, 32,112, 97,114,
6735      97,109,101,116,101,114, 41, 39, 44, 32, 50, 41, 10,101,110,
6736     100, 10,101,108,115,101,105,102, 32,116,121,112,101, 70,105,
6737     114,115,116, 65,114,103, 32, 61, 61, 32, 39,110,117,109, 98,
6738     101,114, 39, 32, 97,110,100, 32,116,121,112,101, 40,103,114,
6739     101,101,110, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114,
6740      39, 32, 97,110,100, 32,116,121,112,101, 40, 98,108,117,101,
6741      41, 32, 61, 61, 32, 39,110,117,109, 98,101,114, 39, 32,116,
6742     104,101,110, 10,115, 99,101,110,101, 58, 83,101,116, 76,105,
6743     103,104,116, 65,109, 98,105,101,110,116, 67,111,108,111,117,
6744     114, 40,114,101,100, 44, 32,103,114,101,101,110, 44, 32, 98,
6745     108,117,101, 41, 10,101,108,115,101, 10,101,114,114,111,114,
6746      40, 39, 87,114,111,110,103, 32,110,117,109, 98,101,114, 32,
6747     111,114, 32,116,121,112,101, 32,111,102, 32,112, 97,114, 97,
6748     109,101,116,101,114,115, 32,102,111,114, 32, 83,101,116, 76,
6749     105,103,104,116, 65,109, 98,105,101,110,116, 67,111,108,111,
6750     117,114, 32, 40,115,101,101, 32,102,114,111,109, 32,102,105,
6751     114,115,116, 32,112, 97,114, 97,109,101,116,101,114, 41, 39,
6752      44, 32, 50, 41, 10,101,110,100, 10,101,110,100, 10,102,117,
6753     110, 99,116,105,111,110, 32, 83,101,116, 76,105,103,104,116,
6754      73,110,116,101,110,115,105,116,121, 40,105,110,116,101,110,
6755     115,105,116,121, 41, 10,105,102, 32,116,121,112,101, 40,105,
6756     110,116,101,110,115,105,116,121, 41, 32, 61, 61, 32, 39,110,
6757     117,109, 98,101,114, 39, 32,116,104,101,110, 10,115, 99,101,
6758     110,101, 58, 83,101,116, 76,105,103,104,116, 73,110,116,101,
6759     110,115,105,116,121, 40,105,110,116,101,110,115,105,116,121,
6760      41, 10,101,108,115,101, 10,101,114,114,111,114, 40, 39, 65,
6761     114,103,117,109,101,110,116, 32,102,111,114, 32, 83,101,116,
6762      76,105,103,104,116, 73,110,116,101,110,115,105,116,121, 32,
6763     109,117,115,116, 32,104, 97,118,101, 32,110,117,109, 98,101,
6764     114, 32,116,121,112,101, 32, 40,105,110,116,101,110,115,105,
6765     116,121, 41, 39, 44, 32, 50, 41, 10,101,110,100, 10,101,110,
6766     100, 10,102,117,110, 99,116,105,111,110, 32, 83,101,116, 76,
6767     105,103,104,116, 65,116,116,101,110,117, 97,116,105,111,110,
6768      40, 97,116,116,101,110,117, 97,116,105,111,110, 41, 10,105,
6769     102, 32,116,121,112,101, 40, 97,116,116,101,110,117, 97,116,
6770     105,111,110, 41, 32, 61, 61, 32, 39,110,117,109, 98,101,114,
6771      39, 32,116,104,101,110, 10,115, 99,101,110,101, 58, 83,101,
6772     116, 76,105,103,104,116, 65,116,116,101,110,117, 97,116,105,
6773     111,110, 40, 97,116,116,101,110,117, 97,116,105,111,110, 41,
6774      10,101,108,115,101, 10,101,114,114,111,114, 40, 39, 65,114,
6775     103,117,109,101,110,116, 32,102,111,114, 32, 83,101,116, 76,
6776     105,103,104,116, 65,116,116,101,110,117, 97,116,105,111,110,
6777      32,109,117,115,116, 32,104, 97,118,101, 32,110,117,109, 98,
6778     101,114, 32,116,121,112,101, 32, 40, 97,116,116,101,110,117,
6779      97,116,105,111,110, 41, 39, 44, 32, 50, 41, 10,101,110,100,
6780      10,101,110,100, 10,102,117,110, 99,116,105,111,110, 32, 71,
6781     101,116, 76,105,103,104,116, 65,109, 98,105,101,110,116, 67,
6782     111,108,111,117,114, 40, 41, 10,114,101,116,117,114,110, 32,
6783     115, 99,101,110,101, 58, 71,101,116, 76,105,103,104,116, 65,
6784     109, 98,105,101,110,116, 67,111,108,111,117,114, 40, 41, 10,
6785     101,110,100, 10,102,117,110, 99,116,105,111,110, 32, 71,101,
6786     116, 76,105,103,104,116, 73,110,116,101,110,115,105,116,121,
6787      40, 41, 10,114,101,116,117,114,110, 32,115, 99,101,110,101,
6788      58, 71,101,116, 76,105,103,104,116, 73,110,116,101,110,115,
6789     105,116,121, 40, 41, 10,101,110,100, 10,102,117,110, 99,116,
6790     105,111,110, 32, 71,101,116, 76,105,103,104,116, 65,116,116,
6791     101,110,117, 97,116,105,111,110, 40, 41, 10,114,101,116,117,
6792     114,110, 32,115, 99,101,110,101, 58, 71,101,116, 76,105,103,
6793     104,116, 65,116,116,101,110,117, 97,116,105,111,110, 40, 41,
6794      10,101,110,100, 10,102,117,110, 99,116,105,111,110, 32, 67,
6795     114,101, 97,116,101, 80,111,105,110,116, 76,105,103,104,116,
6796      40,110, 97,109,101, 41, 10,105,102, 32,116,121,112,101, 40,
6797     110, 97,109,101, 41, 32,126, 61, 32, 39,115,116,114,105,110,
6798     103, 39, 32,116,104,101,110, 10,101,114,114,111,114, 40, 39,
6799      65,114,103,117,109,101,110,116, 32,102,111,114, 32, 67,114,
6800     101, 97,116,101, 80,111,105,110,116, 76,105,103,104,116, 32,
6801     109,117,115,116, 32,104, 97,118,101, 32,115,116,114,105,110,
6802     103, 32,116,121,112,101, 32, 40,110, 97,109,101, 32,111,102,
6803      32,112,111,105,110,116, 32,108,105,103,104,116, 41, 39, 44,
6804      32, 50, 41, 10,101,110,100, 10,108,111, 99, 97,108, 32,114,
6805     101,115, 32, 61, 32, 80,111,105,110,116, 76,105,103,104,116,
6806      58, 67,114,101, 97,116,101, 80,111,105,110,116, 76,105,103,
6807     104,116, 40,110, 97,109,101, 41, 10,105,102, 32,114,101,115,
6808      32,126, 61, 32,110,105,108, 32,116,104,101,110, 10,114,101,
6809     116,117,114,110, 32,114,101,115, 10,101,108,115,101, 10,101,
6810     114,114,111,114, 40, 39, 79,117,116, 32,111,102, 32,109,101,
6811     109,111,114,121, 32,119,104,105,108,101, 32, 99,114,101, 97,
6812     116,105,110,103, 32, 80,111,105,110,116, 76,105,103,104,116,
6813      32,111, 98,106,101, 99,116, 39, 44, 32, 50, 41, 10,101,110,
6814     100, 10,101,110,100, 10,102,117,110, 99,116,105,111,110, 32,
6815      67,114,101, 97,116,101, 83,112,111,116, 76,105,103,104,116,
6816      40,110, 97,109,101, 41, 10,105,102, 32,116,121,112,101, 40,
6817     110, 97,109,101, 41, 32,126, 61, 32, 39,115,116,114,105,110,
6818     103, 39, 32,116,104,101,110, 10,101,114,114,111,114, 40, 39,
6819      65,114,103,117,109,101,110,116, 32,102,111,114, 32, 67,114,
6820     101, 97,116,101, 83,112,111,116, 76,105,103,104,116, 32,109,
6821     117,115,116, 32,104, 97,118,101, 32,115,116,114,105,110,103,
6822      32,116,121,112,101, 32, 40,110, 97,109,101, 32,111,102, 32,
6823     115,112,111,116, 32,108,105,103,104,116, 41, 39, 44, 32, 50,
6824      41, 10,101,110,100, 10,108,111, 99, 97,108, 32,114,101,115,
6825      32, 61, 32, 83,112,111,116, 76,105,103,104,116, 58, 67,114,
6826     101, 97,116,101, 83,112,111,116, 76,105,103,104,116, 40,110,
6827      97,109,101, 41, 10,105,102, 32,114,101,115, 32,126, 61, 32,
6828     110,105,108, 32,116,104,101,110, 10,114,101,116,117,114,110,
6829      32,114,101,115, 10,101,108,115,101, 10,101,114,114,111,114,
6830      40, 39, 79,117,116, 32,111,102, 32,109,101,109,111,114,121,
6831      32,119,104,105,108,101, 32, 99,114,101, 97,116,105,110,103,
6832      32, 83,112,111,116, 76,105,103,104,116, 32,111, 98,106,101,
6833      99,116, 39, 44, 32, 50, 41, 10,101,110,100, 10,101,110,100,
6834      10,102,117,110, 99,116,105,111,110, 32, 67,114,101, 97,116,
6835     101, 68,105,114,101, 99,116,105,111,110, 97,108, 76,105,103,
6836     104,116, 40,110, 97,109,101, 41, 10,105,102, 32,116,121,112,
6837     101, 40,110, 97,109,101, 41, 32,126, 61, 32, 39,115,116,114,
6838     105,110,103, 39, 32,116,104,101,110, 10,101,114,114,111,114,
6839      40, 39, 65,114,103,117,109,101,110,116, 32,102,111,114, 32,
6840      67,114,101, 97,116,101, 68,105,114,101, 99,116,105,111,110,
6841      97,108, 76,105,103,104,116, 32,109,117,115,116, 32,104, 97,
6842     118,101, 32,115,116,114,105,110,103, 32,116,121,112,101, 32,
6843      40,110, 97,109,101, 32,111,102, 32,100,105,114,101, 99,116,
6844     105,111,110, 97,108, 32,108,105,103,104,116, 41, 39, 44, 32,
6845      50, 41, 10,101,110,100, 10,108,111, 99, 97,108, 32,114,101,
6846     115, 32, 61, 32, 68,105,114,101, 99,116,105,111,110, 97,108,
6847      76,105,103,104,116, 58, 67,114,101, 97,116,101, 68,105,114,
6848     101, 99,116,105,111,110, 97,108, 76,105,103,104,116, 40, 41,
6849      10,105,102, 32,114,101,115, 32,126, 61, 32,110,105,108, 32,
6850     116,104,101,110, 10,114,101,116,117,114,110, 32,114,101,115,
6851      10,101,108,115,101, 10,101,114,114,111,114, 40, 39, 79,117,
6852     116, 32,111,102, 32,109,101,109,111,114,121, 32,119,104,105,
6853     108,101, 32, 99,114,101, 97,116,105,110,103, 32, 68,105,114,
6854     101, 99,116,105,111,110, 97,108, 76,105,103,104,116, 32,111,
6855      98,106,101, 99,116, 39, 44, 32, 50, 41, 10,101,110,100, 10,
6856     101,110,100, 45, 45, 45, 45, 45, 45, 45,32
6857    };
6858    tolua_dobuffer(tolua_S,(char*)B,sizeof(B),"tolua embedded: ./light.lua");
6859    lua_settop(tolua_S, top);
6860   } /* end of embedded lua code */
6861
6862  tolua_endmodule(tolua_S);
6863  return 1;
6864 }
6865
6866
6867 #if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 501
6868  TOLUA_API int luaopen_ (lua_State* tolua_S) {
6869  return tolua__open(tolua_S);
6870 };
6871 #endif
6872