]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/modules/glcanvas/msw/glcanvas.cpp
Damn broken pipes.
[wxWidgets.git] / utils / wxPython / modules / glcanvas / msw / glcanvas.cpp
index 4518b46da708da115b708fae57ca20337d5d15bc..7169a929931772701270755477c6ecae9dd87c3a 100644 (file)
@@ -3,7 +3,7 @@
  * 
  * This file was automatically generated by :
  * Simplified Wrapper and Interface Generator (SWIG)
  * 
  * This file was automatically generated by :
  * Simplified Wrapper and Interface Generator (SWIG)
- * Version 1.1 (Patch 6)
+ * Version 1.1 (Build 802)
  * 
  * Portions Copyright (c) 1995-1998
  * The University of Utah and The Regents of the University of California.
  * 
  * Portions Copyright (c) 1995-1998
  * The University of Utah and The Regents of the University of California.
@@ -124,12 +124,13 @@ static char* wxStringErrorMsg = "string type is required for parameter";
 #ifdef __cplusplus
 extern "C" {
 #endif
 #ifdef __cplusplus
 extern "C" {
 #endif
-static PyObject *_wrap_glArrayElementEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glArrayElementEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     PyObject * _resultobj;
     GLint  _arg0;
+    char *_kwnames[] = { "i", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glArrayElementEXT",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glArrayElementEXT",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -141,7 +142,7 @@ static PyObject *_wrap_glArrayElementEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColorPointerEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColorPointerEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
@@ -149,9 +150,10 @@ static PyObject *_wrap_glColorPointerEXT(PyObject *self, PyObject *args) {
     GLsizei  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
     GLsizei  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
+    char *_kwnames[] = { "size","type","stride","count","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiO:glColorPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiO:glColorPointerEXT",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
@@ -170,14 +172,15 @@ static PyObject *_wrap_glColorPointerEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDrawArraysEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDrawArraysEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
+    char *_kwnames[] = { "mode","first","count", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glDrawArraysEXT",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glDrawArraysEXT",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -189,15 +192,16 @@ static PyObject *_wrap_glDrawArraysEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEdgeFlagPointerEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEdgeFlagPointerEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLsizei  _arg1;
     GLboolean * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLsizei  _arg1;
     GLboolean * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "stride","count","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glEdgeFlagPointerEXT",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glEdgeFlagPointerEXT",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -216,14 +220,15 @@ static PyObject *_wrap_glEdgeFlagPointerEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetPointervEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetPointervEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLvoid ** _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLvoid ** _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetPointervEXT",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetPointervEXT",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -242,16 +247,17 @@ static PyObject *_wrap_glGetPointervEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexPointerEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexPointerEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
+    char *_kwnames[] = { "type","stride","count","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiO:glIndexPointerEXT",&_arg0,&_arg1,&_arg2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiO:glIndexPointerEXT",_kwnames,&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
@@ -270,16 +276,17 @@ static PyObject *_wrap_glIndexPointerEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormalPointerEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormalPointerEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
+    char *_kwnames[] = { "type","stride","count","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiO:glNormalPointerEXT",&_arg0,&_arg1,&_arg2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiO:glNormalPointerEXT",_kwnames,&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
@@ -298,7 +305,7 @@ static PyObject *_wrap_glNormalPointerEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoordPointerEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoordPointerEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
@@ -306,9 +313,10 @@ static PyObject *_wrap_glTexCoordPointerEXT(PyObject *self, PyObject *args) {
     GLsizei  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
     GLsizei  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
+    char *_kwnames[] = { "size","type","stride","count","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiO:glTexCoordPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiO:glTexCoordPointerEXT",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
@@ -327,7 +335,7 @@ static PyObject *_wrap_glTexCoordPointerEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertexPointerEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertexPointerEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
@@ -335,9 +343,10 @@ static PyObject *_wrap_glVertexPointerEXT(PyObject *self, PyObject *args) {
     GLsizei  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
     GLsizei  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
+    char *_kwnames[] = { "size","type","stride","count","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiO:glVertexPointerEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiO:glVertexPointerEXT",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
@@ -356,7 +365,7 @@ static PyObject *_wrap_glVertexPointerEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColorSubtableEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColorSubtableEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
@@ -365,9 +374,10 @@ static PyObject *_wrap_glColorSubtableEXT(PyObject *self, PyObject *args) {
     GLenum  _arg4;
     GLvoid * _arg5;
     PyObject * _argo5 = 0;
     GLenum  _arg4;
     GLvoid * _arg5;
     PyObject * _argo5 = 0;
+    char *_kwnames[] = { "target","start","count","format","type","table", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiO:glColorSubtableEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiO:glColorSubtableEXT",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
         return NULL;
     if (_argo5) {
         if (_argo5 == Py_None) { _arg5 = NULL; }
         return NULL;
     if (_argo5) {
         if (_argo5 == Py_None) { _arg5 = NULL; }
@@ -386,7 +396,7 @@ static PyObject *_wrap_glColorSubtableEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColorTableEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColorTableEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
@@ -395,9 +405,10 @@ static PyObject *_wrap_glColorTableEXT(PyObject *self, PyObject *args) {
     GLenum  _arg4;
     GLvoid * _arg5;
     PyObject * _argo5 = 0;
     GLenum  _arg4;
     GLvoid * _arg5;
     PyObject * _argo5 = 0;
+    char *_kwnames[] = { "target","internalformat","width","format","type","table", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiO:glColorTableEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiO:glColorTableEXT",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
         return NULL;
     if (_argo5) {
         if (_argo5 == Py_None) { _arg5 = NULL; }
         return NULL;
     if (_argo5) {
         if (_argo5 == Py_None) { _arg5 = NULL; }
@@ -416,16 +427,17 @@ static PyObject *_wrap_glColorTableEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCopyColorTableEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCopyColorTableEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
     GLint  _arg3;
     GLsizei  _arg4;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
     GLint  _arg3;
     GLsizei  _arg4;
+    char *_kwnames[] = { "target","internalformat","x","y","width", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiii:glCopyColorTableEXT",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiii:glCopyColorTableEXT",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -437,16 +449,17 @@ static PyObject *_wrap_glCopyColorTableEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetColorTableEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetColorTableEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLenum  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLenum  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
+    char *_kwnames[] = { "target","format","type","table", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiO:glGetColorTableEXT",&_arg0,&_arg1,&_arg2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiO:glGetColorTableEXT",_kwnames,&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
@@ -465,15 +478,16 @@ static PyObject *_wrap_glGetColorTableEXT(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetColorTableParamaterfvEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetColorTableParamaterfvEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetColorTableParamaterfvEXT",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetColorTableParamaterfvEXT",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -492,15 +506,16 @@ static PyObject *_wrap_glGetColorTableParamaterfvEXT(PyObject *self, PyObject *a
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetColorTavleParameterivEXT(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetColorTavleParameterivEXT(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetColorTavleParameterivEXT",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetColorTavleParameterivEXT",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -519,13 +534,14 @@ static PyObject *_wrap_glGetColorTavleParameterivEXT(PyObject *self, PyObject *a
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLockArraysSGI(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLockArraysSGI(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLsizei  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLsizei  _arg1;
+    char *_kwnames[] = { "first","count", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glLockArraysSGI",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glLockArraysSGI",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -537,11 +553,12 @@ static PyObject *_wrap_glLockArraysSGI(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glUnlockArraysSGI(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glUnlockArraysSGI(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glUnlockArraysSGI")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glUnlockArraysSGI",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -553,14 +570,15 @@ static PyObject *_wrap_glUnlockArraysSGI(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCullParameterdvSGI(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCullParameterdvSGI(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glCullParameterdvSGI",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glCullParameterdvSGI",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -579,14 +597,15 @@ static PyObject *_wrap_glCullParameterdvSGI(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCullParameterfvSGI(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCullParameterfvSGI(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glCullParameterfvSGI",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glCullParameterfvSGI",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -605,13 +624,14 @@ static PyObject *_wrap_glCullParameterfvSGI(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexFuncSGI(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexFuncSGI(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLclampf  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLclampf  _arg1;
+    char *_kwnames[] = { "func","ref", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"if:glIndexFuncSGI",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"if:glIndexFuncSGI",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -623,13 +643,14 @@ static PyObject *_wrap_glIndexFuncSGI(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexMaterialSGI(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexMaterialSGI(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
+    char *_kwnames[] = { "face","mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glIndexMaterialSGI",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glIndexMaterialSGI",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -641,15 +662,16 @@ static PyObject *_wrap_glIndexMaterialSGI(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glAddSwapHintRectWin(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glAddSwapHintRectWin(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     GLsizei  _arg3;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     GLsizei  _arg3;
+    char *_kwnames[] = { "x","y","width","height", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiii:glAddSwapHintRectWin",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiii:glAddSwapHintRectWin",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -661,13 +683,14 @@ static PyObject *_wrap_glAddSwapHintRectWin(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glAccum(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glAccum(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "op","value", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"if:glAccum",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"if:glAccum",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -679,13 +702,14 @@ static PyObject *_wrap_glAccum(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glAlphaFunc(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glAlphaFunc(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLclampf  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLclampf  _arg1;
+    char *_kwnames[] = { "func","ref", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"if:glAlphaFunc",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"if:glAlphaFunc",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -697,7 +721,7 @@ static PyObject *_wrap_glAlphaFunc(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glAreTexturesResident(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glAreTexturesResident(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLboolean  _result;
     GLsizei  _arg0;
     PyObject * _resultobj;
     GLboolean  _result;
     GLsizei  _arg0;
@@ -705,9 +729,10 @@ static PyObject *_wrap_glAreTexturesResident(PyObject *self, PyObject *args) {
     GLboolean * _arg2;
     PyObject * _argo1 = 0;
     PyObject * _argo2 = 0;
     GLboolean * _arg2;
     PyObject * _argo1 = 0;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "n","textures","residences", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iOO:glAreTexturesResident",&_arg0,&_argo1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iOO:glAreTexturesResident",_kwnames,&_arg0,&_argo1,&_argo2)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -732,12 +757,13 @@ static PyObject *_wrap_glAreTexturesResident(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glArrayElement(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glArrayElement(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     PyObject * _resultobj;
     GLint  _arg0;
+    char *_kwnames[] = { "i", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glArrayElement",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glArrayElement",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -749,12 +775,13 @@ static PyObject *_wrap_glArrayElement(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glBegin(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glBegin(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glBegin",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glBegin",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -766,13 +793,14 @@ static PyObject *_wrap_glBegin(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glBindTexture(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glBindTexture(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLuint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLuint  _arg1;
+    char *_kwnames[] = { "target","texture", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glBindTexture",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glBindTexture",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -784,7 +812,7 @@ static PyObject *_wrap_glBindTexture(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glBitmap(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glBitmap(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLsizei  _arg1;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLsizei  _arg1;
@@ -794,9 +822,10 @@ static PyObject *_wrap_glBitmap(PyObject *self, PyObject *args) {
     GLfloat  _arg5;
     GLubyte * _arg6;
     PyObject * _argo6 = 0;
     GLfloat  _arg5;
     GLubyte * _arg6;
     PyObject * _argo6 = 0;
+    char *_kwnames[] = { "width","height","xorig","yorig","xmove","ymove","bitmap", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiffffO:glBitmap",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argo6)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiffffO:glBitmap",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argo6)) 
         return NULL;
     if (_argo6) {
         if (_argo6 == Py_None) { _arg6 = NULL; }
         return NULL;
     if (_argo6) {
         if (_argo6 == Py_None) { _arg6 = NULL; }
@@ -815,13 +844,14 @@ static PyObject *_wrap_glBitmap(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glBlendFunc(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glBlendFunc(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
+    char *_kwnames[] = { "sfactor","dfactor", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glBlendFunc",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glBlendFunc",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -833,12 +863,13 @@ static PyObject *_wrap_glBlendFunc(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCallList(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCallList(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     PyObject * _resultobj;
     GLuint  _arg0;
+    char *_kwnames[] = { "list", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glCallList",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glCallList",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -850,15 +881,16 @@ static PyObject *_wrap_glCallList(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCallLists(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCallLists(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLenum  _arg1;
     GLvoid * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLenum  _arg1;
     GLvoid * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "n","type","lists", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glCallLists",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glCallLists",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -877,12 +909,13 @@ static PyObject *_wrap_glCallLists(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glClear(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glClear(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLbitfield  _arg0;
     PyObject * _resultobj;
     GLbitfield  _arg0;
+    char *_kwnames[] = { "mask", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glClear",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glClear",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -894,15 +927,16 @@ static PyObject *_wrap_glClear(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glClearAccum(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glClearAccum(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ffff:glClearAccum",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ffff:glClearAccum",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -914,15 +948,16 @@ static PyObject *_wrap_glClearAccum(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glClearColor(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glClearColor(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLclampf  _arg0;
     GLclampf  _arg1;
     GLclampf  _arg2;
     GLclampf  _arg3;
     PyObject * _resultobj;
     GLclampf  _arg0;
     GLclampf  _arg1;
     GLclampf  _arg2;
     GLclampf  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ffff:glClearColor",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ffff:glClearColor",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -934,12 +969,13 @@ static PyObject *_wrap_glClearColor(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glClearDepth(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glClearDepth(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLclampd  _arg0;
     PyObject * _resultobj;
     GLclampd  _arg0;
+    char *_kwnames[] = { "depth", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"d:glClearDepth",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"d:glClearDepth",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -951,12 +987,13 @@ static PyObject *_wrap_glClearDepth(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glClearIndex(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glClearIndex(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     PyObject * _resultobj;
     GLfloat  _arg0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"f:glClearIndex",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"f:glClearIndex",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -968,12 +1005,13 @@ static PyObject *_wrap_glClearIndex(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glClearStencil(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glClearStencil(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     PyObject * _resultobj;
     GLint  _arg0;
+    char *_kwnames[] = { "s", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glClearStencil",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glClearStencil",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -985,14 +1023,15 @@ static PyObject *_wrap_glClearStencil(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glClipPlane(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glClipPlane(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "plane","equation", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glClipPlane",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glClipPlane",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -1011,14 +1050,15 @@ static PyObject *_wrap_glClipPlane(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3b(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3b(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLbyte  _arg0;
     GLbyte  _arg1;
     GLbyte  _arg2;
     PyObject * _resultobj;
     GLbyte  _arg0;
     GLbyte  _arg1;
     GLbyte  _arg2;
+    char *_kwnames[] = { "red","green","blue", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"bbb:glColor3b",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"bbb:glColor3b",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1030,13 +1070,14 @@ static PyObject *_wrap_glColor3b(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3bv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3bv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLbyte * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLbyte * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor3bv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor3bv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1055,14 +1096,15 @@ static PyObject *_wrap_glColor3bv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
+    char *_kwnames[] = { "red","green","blue", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ddd:glColor3d",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ddd:glColor3d",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1074,13 +1116,14 @@ static PyObject *_wrap_glColor3d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor3dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor3dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1099,14 +1142,15 @@ static PyObject *_wrap_glColor3dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "red","green","blue", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"fff:glColor3f",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"fff:glColor3f",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1118,13 +1162,14 @@ static PyObject *_wrap_glColor3f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor3fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor3fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1143,14 +1188,15 @@ static PyObject *_wrap_glColor3fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "red","green","blue", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glColor3i",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glColor3i",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1162,13 +1208,14 @@ static PyObject *_wrap_glColor3i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor3iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor3iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1187,14 +1234,15 @@ static PyObject *_wrap_glColor3iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
+    char *_kwnames[] = { "red","green","blue", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhh:glColor3s",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhh:glColor3s",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1206,13 +1254,14 @@ static PyObject *_wrap_glColor3s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor3sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor3sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1231,14 +1280,15 @@ static PyObject *_wrap_glColor3sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3ub(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3ub(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLubyte  _arg0;
     GLubyte  _arg1;
     GLubyte  _arg2;
     PyObject * _resultobj;
     GLubyte  _arg0;
     GLubyte  _arg1;
     GLubyte  _arg2;
+    char *_kwnames[] = { "red","green","blue", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"bbb:glColor3ub",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"bbb:glColor3ub",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1250,13 +1300,14 @@ static PyObject *_wrap_glColor3ub(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3ubv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3ubv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor3ubv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor3ubv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1275,14 +1326,15 @@ static PyObject *_wrap_glColor3ubv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3ui(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3ui(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     GLuint  _arg1;
     GLuint  _arg2;
     PyObject * _resultobj;
     GLuint  _arg0;
     GLuint  _arg1;
     GLuint  _arg2;
+    char *_kwnames[] = { "red","green","blue", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glColor3ui",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glColor3ui",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1294,13 +1346,14 @@ static PyObject *_wrap_glColor3ui(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3uiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3uiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLuint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor3uiv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor3uiv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1319,14 +1372,15 @@ static PyObject *_wrap_glColor3uiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3us(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3us(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLushort  _arg0;
     GLushort  _arg1;
     GLushort  _arg2;
     PyObject * _resultobj;
     GLushort  _arg0;
     GLushort  _arg1;
     GLushort  _arg2;
+    char *_kwnames[] = { "red","green","blue", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhh:glColor3us",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhh:glColor3us",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1338,13 +1392,14 @@ static PyObject *_wrap_glColor3us(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor3usv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor3usv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLushort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLushort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor3usv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor3usv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1363,15 +1418,16 @@ static PyObject *_wrap_glColor3usv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4b(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4b(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLbyte  _arg0;
     GLbyte  _arg1;
     GLbyte  _arg2;
     GLbyte  _arg3;
     PyObject * _resultobj;
     GLbyte  _arg0;
     GLbyte  _arg1;
     GLbyte  _arg2;
     GLbyte  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"bbbb:glColor4b",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"bbbb:glColor4b",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1383,13 +1439,14 @@ static PyObject *_wrap_glColor4b(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4bv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4bv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLbyte * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLbyte * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor4bv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor4bv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1408,15 +1465,16 @@ static PyObject *_wrap_glColor4bv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dddd:glColor4d",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dddd:glColor4d",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1428,13 +1486,14 @@ static PyObject *_wrap_glColor4d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor4dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor4dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1453,15 +1512,16 @@ static PyObject *_wrap_glColor4dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ffff:glColor4f",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ffff:glColor4f",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1473,13 +1533,14 @@ static PyObject *_wrap_glColor4f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor4fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor4fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1498,15 +1559,16 @@ static PyObject *_wrap_glColor4fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiii:glColor4i",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiii:glColor4i",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1518,13 +1580,14 @@ static PyObject *_wrap_glColor4i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor4iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor4iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1543,15 +1606,16 @@ static PyObject *_wrap_glColor4iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhhh:glColor4s",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhhh:glColor4s",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1563,13 +1627,14 @@ static PyObject *_wrap_glColor4s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor4sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor4sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1588,15 +1653,16 @@ static PyObject *_wrap_glColor4sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4ub(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4ub(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLubyte  _arg0;
     GLubyte  _arg1;
     GLubyte  _arg2;
     GLubyte  _arg3;
     PyObject * _resultobj;
     GLubyte  _arg0;
     GLubyte  _arg1;
     GLubyte  _arg2;
     GLubyte  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"bbbb:glColor4ub",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"bbbb:glColor4ub",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1608,13 +1674,14 @@ static PyObject *_wrap_glColor4ub(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4ubv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4ubv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor4ubv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor4ubv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1633,15 +1700,16 @@ static PyObject *_wrap_glColor4ubv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4ui(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4ui(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     GLuint  _arg1;
     GLuint  _arg2;
     GLuint  _arg3;
     PyObject * _resultobj;
     GLuint  _arg0;
     GLuint  _arg1;
     GLuint  _arg2;
     GLuint  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiii:glColor4ui",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiii:glColor4ui",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1653,13 +1721,14 @@ static PyObject *_wrap_glColor4ui(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4uiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4uiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLuint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor4uiv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor4uiv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1678,15 +1747,16 @@ static PyObject *_wrap_glColor4uiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4us(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4us(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLushort  _arg0;
     GLushort  _arg1;
     GLushort  _arg2;
     GLushort  _arg3;
     PyObject * _resultobj;
     GLushort  _arg0;
     GLushort  _arg1;
     GLushort  _arg2;
     GLushort  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhhh:glColor4us",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhhh:glColor4us",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1698,13 +1768,14 @@ static PyObject *_wrap_glColor4us(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColor4usv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColor4usv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLushort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLushort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glColor4usv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glColor4usv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1723,15 +1794,16 @@ static PyObject *_wrap_glColor4usv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColorMask(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColorMask(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLboolean  _arg0;
     GLboolean  _arg1;
     GLboolean  _arg2;
     GLboolean  _arg3;
     PyObject * _resultobj;
     GLboolean  _arg0;
     GLboolean  _arg1;
     GLboolean  _arg2;
     GLboolean  _arg3;
+    char *_kwnames[] = { "red","green","blue","alpha", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"bbbb:glColorMask",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"bbbb:glColorMask",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1743,13 +1815,14 @@ static PyObject *_wrap_glColorMask(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColorMaterial(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColorMaterial(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
+    char *_kwnames[] = { "face","mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glColorMaterial",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glColorMaterial",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1761,16 +1834,17 @@ static PyObject *_wrap_glColorMaterial(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glColorPointer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glColorPointer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
+    char *_kwnames[] = { "size","type","stride","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiO:glColorPointer",&_arg0,&_arg1,&_arg2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiO:glColorPointer",_kwnames,&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
@@ -1789,16 +1863,17 @@ static PyObject *_wrap_glColorPointer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCopyPixels(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCopyPixels(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     GLsizei  _arg3;
     GLenum  _arg4;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     GLsizei  _arg3;
     GLenum  _arg4;
+    char *_kwnames[] = { "x","y","width","height","type", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiii:glCopyPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiii:glCopyPixels",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1810,7 +1885,7 @@ static PyObject *_wrap_glCopyPixels(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCopyTexImage1D(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCopyTexImage1D(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
@@ -1819,9 +1894,10 @@ static PyObject *_wrap_glCopyTexImage1D(PyObject *self, PyObject *args) {
     GLint  _arg4;
     GLsizei  _arg5;
     GLint  _arg6;
     GLint  _arg4;
     GLsizei  _arg5;
     GLint  _arg6;
+    char *_kwnames[] = { "target","level","internalFormat","x","y","width","border", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiii:glCopyTexImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiii:glCopyTexImage1D",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1833,7 +1909,7 @@ static PyObject *_wrap_glCopyTexImage1D(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCopyTexImage2D(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCopyTexImage2D(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
@@ -1843,9 +1919,10 @@ static PyObject *_wrap_glCopyTexImage2D(PyObject *self, PyObject *args) {
     GLsizei  _arg5;
     GLsizei  _arg6;
     GLint  _arg7;
     GLsizei  _arg5;
     GLsizei  _arg6;
     GLint  _arg7;
+    char *_kwnames[] = { "target","level","internalFormat","x","y","width","height","border", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiii:glCopyTexImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiiii:glCopyTexImage2D",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1857,7 +1934,7 @@ static PyObject *_wrap_glCopyTexImage2D(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCopyTexSubImage1D(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCopyTexSubImage1D(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
@@ -1865,9 +1942,10 @@ static PyObject *_wrap_glCopyTexSubImage1D(PyObject *self, PyObject *args) {
     GLint  _arg3;
     GLint  _arg4;
     GLsizei  _arg5;
     GLint  _arg3;
     GLint  _arg4;
     GLsizei  _arg5;
+    char *_kwnames[] = { "target","level","xoffset","x","y","width", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiii:glCopyTexSubImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiii:glCopyTexSubImage1D",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1879,7 +1957,7 @@ static PyObject *_wrap_glCopyTexSubImage1D(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCopyTexSubImage2D(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCopyTexSubImage2D(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
@@ -1889,9 +1967,10 @@ static PyObject *_wrap_glCopyTexSubImage2D(PyObject *self, PyObject *args) {
     GLint  _arg5;
     GLsizei  _arg6;
     GLsizei  _arg7;
     GLint  _arg5;
     GLsizei  _arg6;
     GLsizei  _arg7;
+    char *_kwnames[] = { "target","level","xoffset","yoffset","x","y","width","height", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiii:glCopyTexSubImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiiii:glCopyTexSubImage2D",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1903,12 +1982,13 @@ static PyObject *_wrap_glCopyTexSubImage2D(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glCullFace(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glCullFace(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glCullFace",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glCullFace",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1920,13 +2000,14 @@ static PyObject *_wrap_glCullFace(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDeleteLists(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDeleteLists(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     GLsizei  _arg1;
     PyObject * _resultobj;
     GLuint  _arg0;
     GLsizei  _arg1;
+    char *_kwnames[] = { "list","range", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glDeleteLists",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glDeleteLists",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1938,14 +2019,15 @@ static PyObject *_wrap_glDeleteLists(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDeleteTextures(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDeleteTextures(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "n","textures", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glDeleteTextures",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glDeleteTextures",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -1964,12 +2046,13 @@ static PyObject *_wrap_glDeleteTextures(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDepthFunc(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDepthFunc(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "func", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glDepthFunc",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glDepthFunc",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1981,12 +2064,13 @@ static PyObject *_wrap_glDepthFunc(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDepthMask(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDepthMask(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLboolean  _arg0;
     PyObject * _resultobj;
     GLboolean  _arg0;
+    char *_kwnames[] = { "flag", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"b:glDepthMask",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"b:glDepthMask",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -1998,13 +2082,14 @@ static PyObject *_wrap_glDepthMask(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDepthRange(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDepthRange(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLclampd  _arg0;
     GLclampd  _arg1;
     PyObject * _resultobj;
     GLclampd  _arg0;
     GLclampd  _arg1;
+    char *_kwnames[] = { "zNear","zFar", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dd:glDepthRange",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dd:glDepthRange",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2016,12 +2101,13 @@ static PyObject *_wrap_glDepthRange(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDisable(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDisable(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "cap", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glDisable",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glDisable",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2033,12 +2119,13 @@ static PyObject *_wrap_glDisable(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDisableClientState(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDisableClientState(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "array", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glDisableClientState",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glDisableClientState",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2050,14 +2137,15 @@ static PyObject *_wrap_glDisableClientState(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDrawArrays(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDrawArrays(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
+    char *_kwnames[] = { "mode","first","count", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glDrawArrays",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glDrawArrays",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2069,12 +2157,13 @@ static PyObject *_wrap_glDrawArrays(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDrawBuffer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDrawBuffer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glDrawBuffer",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glDrawBuffer",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2086,16 +2175,17 @@ static PyObject *_wrap_glDrawBuffer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDrawElements(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDrawElements(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLenum  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLenum  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
+    char *_kwnames[] = { "mode","count","type","indices", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiO:glDrawElements",&_arg0,&_arg1,&_arg2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiO:glDrawElements",_kwnames,&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
@@ -2114,7 +2204,7 @@ static PyObject *_wrap_glDrawElements(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glDrawPixels(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glDrawPixels(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLsizei  _arg1;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLsizei  _arg1;
@@ -2122,9 +2212,10 @@ static PyObject *_wrap_glDrawPixels(PyObject *self, PyObject *args) {
     GLenum  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
     GLenum  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
+    char *_kwnames[] = { "width","height","format","type","pixels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiO:glDrawPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiO:glDrawPixels",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
@@ -2143,12 +2234,13 @@ static PyObject *_wrap_glDrawPixels(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEdgeFlag(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEdgeFlag(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLboolean  _arg0;
     PyObject * _resultobj;
     GLboolean  _arg0;
+    char *_kwnames[] = { "flag", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"b:glEdgeFlag",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"b:glEdgeFlag",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2160,14 +2252,15 @@ static PyObject *_wrap_glEdgeFlag(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEdgeFlagPointer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEdgeFlagPointer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLboolean * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLboolean * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "stride","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glEdgeFlagPointer",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glEdgeFlagPointer",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -2186,13 +2279,14 @@ static PyObject *_wrap_glEdgeFlagPointer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEdgeFlagv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEdgeFlagv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLboolean * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLboolean * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "flag", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glEdgeFlagv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glEdgeFlagv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -2211,12 +2305,13 @@ static PyObject *_wrap_glEdgeFlagv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEnable(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEnable(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "cap", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glEnable",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glEnable",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2228,12 +2323,13 @@ static PyObject *_wrap_glEnable(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEnableClientState(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEnableClientState(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "array", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glEnableClientState",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glEnableClientState",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2245,11 +2341,12 @@ static PyObject *_wrap_glEnableClientState(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEnd(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEnd(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glEnd")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glEnd",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2261,11 +2358,12 @@ static PyObject *_wrap_glEnd(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEndList(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEndList(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glEndList")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glEndList",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2277,12 +2375,13 @@ static PyObject *_wrap_glEndList(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalCoord1d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalCoord1d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     PyObject * _resultobj;
     GLdouble  _arg0;
+    char *_kwnames[] = { "u", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"d:glEvalCoord1d",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"d:glEvalCoord1d",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2294,13 +2393,14 @@ static PyObject *_wrap_glEvalCoord1d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalCoord1dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalCoord1dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "u", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glEvalCoord1dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glEvalCoord1dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -2319,12 +2419,13 @@ static PyObject *_wrap_glEvalCoord1dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalCoord1f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalCoord1f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     PyObject * _resultobj;
     GLfloat  _arg0;
+    char *_kwnames[] = { "u", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"f:glEvalCoord1f",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"f:glEvalCoord1f",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2336,13 +2437,14 @@ static PyObject *_wrap_glEvalCoord1f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalCoord1fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalCoord1fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "u", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glEvalCoord1fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glEvalCoord1fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -2361,13 +2463,14 @@ static PyObject *_wrap_glEvalCoord1fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalCoord2d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalCoord2d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
+    char *_kwnames[] = { "u","v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dd:glEvalCoord2d",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dd:glEvalCoord2d",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2379,13 +2482,14 @@ static PyObject *_wrap_glEvalCoord2d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalCoord2dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalCoord2dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "u", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glEvalCoord2dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glEvalCoord2dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -2404,13 +2508,14 @@ static PyObject *_wrap_glEvalCoord2dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalCoord2f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalCoord2f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "u","v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ff:glEvalCoord2f",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ff:glEvalCoord2f",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2422,13 +2527,14 @@ static PyObject *_wrap_glEvalCoord2f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalCoord2fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalCoord2fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "u", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glEvalCoord2fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glEvalCoord2fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -2447,14 +2553,15 @@ static PyObject *_wrap_glEvalCoord2fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalMesh1(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalMesh1(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "mode","i1","i2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glEvalMesh1",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glEvalMesh1",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2466,16 +2573,17 @@ static PyObject *_wrap_glEvalMesh1(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalMesh2(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalMesh2(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
     GLint  _arg4;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
     GLint  _arg4;
+    char *_kwnames[] = { "mode","i1","i2","j1","j2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiii:glEvalMesh2",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiii:glEvalMesh2",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2487,12 +2595,13 @@ static PyObject *_wrap_glEvalMesh2(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalPoint1(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalPoint1(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     PyObject * _resultobj;
     GLint  _arg0;
+    char *_kwnames[] = { "i", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glEvalPoint1",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glEvalPoint1",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2504,13 +2613,14 @@ static PyObject *_wrap_glEvalPoint1(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glEvalPoint2(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glEvalPoint2(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
+    char *_kwnames[] = { "i","j", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glEvalPoint2",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glEvalPoint2",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2522,15 +2632,16 @@ static PyObject *_wrap_glEvalPoint2(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glFeedbackBuffer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glFeedbackBuffer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "size","type","buffer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glFeedbackBuffer",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glFeedbackBuffer",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -2549,11 +2660,12 @@ static PyObject *_wrap_glFeedbackBuffer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glFinish(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glFinish(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glFinish")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glFinish",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2565,11 +2677,12 @@ static PyObject *_wrap_glFinish(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glFlush(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glFlush(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glFlush")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glFlush",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2581,13 +2694,14 @@ static PyObject *_wrap_glFlush(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glFogf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glFogf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"if:glFogf",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"if:glFogf",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2599,14 +2713,15 @@ static PyObject *_wrap_glFogf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glFogfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glFogfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glFogfv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glFogfv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -2625,13 +2740,14 @@ static PyObject *_wrap_glFogfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glFogi(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glFogi(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
+    char *_kwnames[] = { "pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glFogi",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glFogi",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2643,14 +2759,15 @@ static PyObject *_wrap_glFogi(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glFogiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glFogiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glFogiv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glFogiv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -2669,12 +2786,13 @@ static PyObject *_wrap_glFogiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glFrontFace(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glFrontFace(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glFrontFace",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glFrontFace",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2686,7 +2804,7 @@ static PyObject *_wrap_glFrontFace(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glFrustum(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glFrustum(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
@@ -2694,9 +2812,10 @@ static PyObject *_wrap_glFrustum(PyObject *self, PyObject *args) {
     GLdouble  _arg3;
     GLdouble  _arg4;
     GLdouble  _arg5;
     GLdouble  _arg3;
     GLdouble  _arg4;
     GLdouble  _arg5;
+    char *_kwnames[] = { "left","right","bottom","top","zNear","zFar", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dddddd:glFrustum",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dddddd:glFrustum",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2708,13 +2827,14 @@ static PyObject *_wrap_glFrustum(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGenLists(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGenLists(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _result;
     GLsizei  _arg0;
     PyObject * _resultobj;
     GLuint  _result;
     GLsizei  _arg0;
+    char *_kwnames[] = { "range", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glGenLists",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glGenLists",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2725,14 +2845,15 @@ static PyObject *_wrap_glGenLists(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGenTextures(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGenTextures(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "n","textures", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGenTextures",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGenTextures",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -2751,14 +2872,15 @@ static PyObject *_wrap_glGenTextures(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetBooleanv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetBooleanv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLboolean * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLboolean * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetBooleanv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetBooleanv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -2777,14 +2899,15 @@ static PyObject *_wrap_glGetBooleanv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetClipPlane(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetClipPlane(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "plane","equation", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetClipPlane",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetClipPlane",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -2803,14 +2926,15 @@ static PyObject *_wrap_glGetClipPlane(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetDoublev(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetDoublev(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetDoublev",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetDoublev",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -2829,12 +2953,13 @@ static PyObject *_wrap_glGetDoublev(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetError(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetError(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _result;
     PyObject * _resultobj;
     GLenum  _result;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glGetError")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glGetError",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -2845,14 +2970,15 @@ static PyObject *_wrap_glGetError(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetFloatv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetFloatv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetFloatv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetFloatv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -2871,14 +2997,15 @@ static PyObject *_wrap_glGetFloatv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetIntegerv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetIntegerv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetIntegerv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetIntegerv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -2897,15 +3024,16 @@ static PyObject *_wrap_glGetIntegerv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetLightfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetLightfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "light","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetLightfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetLightfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -2924,15 +3052,16 @@ static PyObject *_wrap_glGetLightfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetLightiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetLightiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "light","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetLightiv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetLightiv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -2951,15 +3080,16 @@ static PyObject *_wrap_glGetLightiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetMapdv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetMapdv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","query","v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetMapdv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetMapdv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -2978,15 +3108,16 @@ static PyObject *_wrap_glGetMapdv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetMapfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetMapfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","query","v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetMapfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetMapfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3005,15 +3136,16 @@ static PyObject *_wrap_glGetMapfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetMapiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetMapiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","query","v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetMapiv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetMapiv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3032,15 +3164,16 @@ static PyObject *_wrap_glGetMapiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetMaterialfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetMaterialfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "face","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetMaterialfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetMaterialfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3059,15 +3192,16 @@ static PyObject *_wrap_glGetMaterialfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetMaterialiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetMaterialiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "face","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetMaterialiv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetMaterialiv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3086,14 +3220,15 @@ static PyObject *_wrap_glGetMaterialiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetPixelMapfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetPixelMapfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "map","values", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetPixelMapfv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetPixelMapfv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -3112,14 +3247,15 @@ static PyObject *_wrap_glGetPixelMapfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetPixelMapuiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetPixelMapuiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLuint * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLuint * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "map","values", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetPixelMapuiv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetPixelMapuiv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -3138,14 +3274,15 @@ static PyObject *_wrap_glGetPixelMapuiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetPixelMapusv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetPixelMapusv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLushort * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLushort * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "map","values", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetPixelMapusv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetPixelMapusv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -3164,14 +3301,15 @@ static PyObject *_wrap_glGetPixelMapusv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetPointerv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetPointerv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLvoid ** _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLvoid ** _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glGetPointerv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glGetPointerv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -3190,13 +3328,14 @@ static PyObject *_wrap_glGetPointerv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetPolygonStipple(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetPolygonStipple(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "mask", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glGetPolygonStipple",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glGetPolygonStipple",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -3215,14 +3354,15 @@ static PyObject *_wrap_glGetPolygonStipple(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetString(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetString(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLubyte * _result;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLubyte * _result;
     GLenum  _arg0;
+    char *_kwnames[] = { "name", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glGetString",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glGetString",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3239,15 +3379,16 @@ static PyObject *_wrap_glGetString(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexEnvfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexEnvfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetTexEnvfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetTexEnvfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3266,15 +3407,16 @@ static PyObject *_wrap_glGetTexEnvfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexEnviv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexEnviv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetTexEnviv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetTexEnviv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3293,15 +3435,16 @@ static PyObject *_wrap_glGetTexEnviv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexGendv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexGendv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "coord","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetTexGendv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetTexGendv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3320,15 +3463,16 @@ static PyObject *_wrap_glGetTexGendv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexGenfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexGenfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "coord","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetTexGenfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetTexGenfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3347,15 +3491,16 @@ static PyObject *_wrap_glGetTexGenfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexGeniv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexGeniv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "coord","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetTexGeniv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetTexGeniv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3374,7 +3519,7 @@ static PyObject *_wrap_glGetTexGeniv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexImage(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexImage(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
@@ -3382,9 +3527,10 @@ static PyObject *_wrap_glGetTexImage(PyObject *self, PyObject *args) {
     GLenum  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
     GLenum  _arg3;
     GLvoid * _arg4;
     PyObject * _argo4 = 0;
+    char *_kwnames[] = { "target","level","format","type","pixels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiO:glGetTexImage",&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiO:glGetTexImage",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_argo4)) 
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
         return NULL;
     if (_argo4) {
         if (_argo4 == Py_None) { _arg4 = NULL; }
@@ -3403,16 +3549,17 @@ static PyObject *_wrap_glGetTexImage(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexLevelParameterfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexLevelParameterfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLenum  _arg2;
     GLfloat * _arg3;
     PyObject * _argo3 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLenum  _arg2;
     GLfloat * _arg3;
     PyObject * _argo3 = 0;
+    char *_kwnames[] = { "target","level","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiO:glGetTexLevelParameterfv",&_arg0,&_arg1,&_arg2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiO:glGetTexLevelParameterfv",_kwnames,&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
@@ -3431,16 +3578,17 @@ static PyObject *_wrap_glGetTexLevelParameterfv(PyObject *self, PyObject *args)
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexLevelParameteriv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexLevelParameteriv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLenum  _arg2;
     GLint * _arg3;
     PyObject * _argo3 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLenum  _arg2;
     GLint * _arg3;
     PyObject * _argo3 = 0;
+    char *_kwnames[] = { "target","level","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiO:glGetTexLevelParameteriv",&_arg0,&_arg1,&_arg2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiO:glGetTexLevelParameteriv",_kwnames,&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
@@ -3459,15 +3607,16 @@ static PyObject *_wrap_glGetTexLevelParameteriv(PyObject *self, PyObject *args)
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexParameterfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexParameterfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetTexParameterfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetTexParameterfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3486,15 +3635,16 @@ static PyObject *_wrap_glGetTexParameterfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glGetTexParameteriv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glGetTexParameteriv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glGetTexParameteriv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glGetTexParameteriv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3513,13 +3663,14 @@ static PyObject *_wrap_glGetTexParameteriv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glHint(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glHint(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
+    char *_kwnames[] = { "target","mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glHint",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glHint",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3531,12 +3682,13 @@ static PyObject *_wrap_glHint(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexMask(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexMask(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     PyObject * _resultobj;
     GLuint  _arg0;
+    char *_kwnames[] = { "mask", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glIndexMask",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glIndexMask",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3548,15 +3700,16 @@ static PyObject *_wrap_glIndexMask(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexPointer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexPointer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLvoid * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLvoid * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "type","stride","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glIndexPointer",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glIndexPointer",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3575,12 +3728,13 @@ static PyObject *_wrap_glIndexPointer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexd(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexd(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     PyObject * _resultobj;
     GLdouble  _arg0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"d:glIndexd",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"d:glIndexd",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3592,13 +3746,14 @@ static PyObject *_wrap_glIndexd(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexdv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexdv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glIndexdv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glIndexdv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -3617,12 +3772,13 @@ static PyObject *_wrap_glIndexdv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     PyObject * _resultobj;
     GLfloat  _arg0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"f:glIndexf",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"f:glIndexf",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3634,13 +3790,14 @@ static PyObject *_wrap_glIndexf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glIndexfv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glIndexfv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -3659,12 +3816,13 @@ static PyObject *_wrap_glIndexfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexi(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexi(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     PyObject * _resultobj;
     GLint  _arg0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glIndexi",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glIndexi",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3676,13 +3834,14 @@ static PyObject *_wrap_glIndexi(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glIndexiv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glIndexiv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -3701,12 +3860,13 @@ static PyObject *_wrap_glIndexiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexs(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexs(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     PyObject * _resultobj;
     GLshort  _arg0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"h:glIndexs",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"h:glIndexs",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3718,13 +3878,14 @@ static PyObject *_wrap_glIndexs(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexsv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexsv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glIndexsv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glIndexsv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -3743,12 +3904,13 @@ static PyObject *_wrap_glIndexsv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexub(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexub(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLubyte  _arg0;
     PyObject * _resultobj;
     GLubyte  _arg0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"b:glIndexub",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"b:glIndexub",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3760,13 +3922,14 @@ static PyObject *_wrap_glIndexub(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIndexubv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIndexubv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "c", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glIndexubv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glIndexubv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -3785,11 +3948,12 @@ static PyObject *_wrap_glIndexubv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glInitNames(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glInitNames(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glInitNames")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glInitNames",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3801,15 +3965,16 @@ static PyObject *_wrap_glInitNames(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glInterleavedArrays(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glInterleavedArrays(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLvoid * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLvoid * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "format","stride","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glInterleavedArrays",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glInterleavedArrays",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -3828,13 +3993,14 @@ static PyObject *_wrap_glInterleavedArrays(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIsEnabled(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIsEnabled(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLboolean  _result;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLboolean  _result;
     GLenum  _arg0;
+    char *_kwnames[] = { "cap", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glIsEnabled",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glIsEnabled",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3845,13 +4011,14 @@ static PyObject *_wrap_glIsEnabled(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIsList(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIsList(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLboolean  _result;
     GLuint  _arg0;
     PyObject * _resultobj;
     GLboolean  _result;
     GLuint  _arg0;
+    char *_kwnames[] = { "list", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glIsList",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glIsList",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3862,13 +4029,14 @@ static PyObject *_wrap_glIsList(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glIsTexture(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glIsTexture(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLboolean  _result;
     GLuint  _arg0;
     PyObject * _resultobj;
     GLboolean  _result;
     GLuint  _arg0;
+    char *_kwnames[] = { "texture", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glIsTexture",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glIsTexture",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3879,13 +4047,14 @@ static PyObject *_wrap_glIsTexture(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLightModelf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLightModelf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"if:glLightModelf",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"if:glLightModelf",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3897,14 +4066,15 @@ static PyObject *_wrap_glLightModelf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLightModelfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLightModelfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glLightModelfv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glLightModelfv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -3923,13 +4093,14 @@ static PyObject *_wrap_glLightModelfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLightModeli(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLightModeli(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
+    char *_kwnames[] = { "pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glLightModeli",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glLightModeli",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3941,14 +4112,15 @@ static PyObject *_wrap_glLightModeli(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLightModeliv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLightModeliv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glLightModeliv",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glLightModeliv",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -3967,14 +4139,15 @@ static PyObject *_wrap_glLightModeliv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLightf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLightf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "light","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iif:glLightf",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iif:glLightf",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -3986,15 +4159,16 @@ static PyObject *_wrap_glLightf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLightfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLightfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "light","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glLightfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glLightfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -4013,14 +4187,15 @@ static PyObject *_wrap_glLightfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLighti(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLighti(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "light","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glLighti",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glLighti",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4032,15 +4207,16 @@ static PyObject *_wrap_glLighti(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLightiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLightiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "light","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glLightiv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glLightiv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -4059,13 +4235,14 @@ static PyObject *_wrap_glLightiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLineStipple(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLineStipple(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLushort  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLushort  _arg1;
+    char *_kwnames[] = { "factor","pattern", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ih:glLineStipple",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ih:glLineStipple",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4077,12 +4254,13 @@ static PyObject *_wrap_glLineStipple(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLineWidth(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLineWidth(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     PyObject * _resultobj;
     GLfloat  _arg0;
+    char *_kwnames[] = { "width", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"f:glLineWidth",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"f:glLineWidth",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4094,12 +4272,13 @@ static PyObject *_wrap_glLineWidth(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glListBase(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glListBase(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     PyObject * _resultobj;
     GLuint  _arg0;
+    char *_kwnames[] = { "base", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glListBase",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glListBase",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4111,11 +4290,12 @@ static PyObject *_wrap_glListBase(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLoadIdentity(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLoadIdentity(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glLoadIdentity")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glLoadIdentity",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4127,13 +4307,14 @@ static PyObject *_wrap_glLoadIdentity(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLoadMatrixd(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLoadMatrixd(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "m", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glLoadMatrixd",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glLoadMatrixd",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4152,13 +4333,14 @@ static PyObject *_wrap_glLoadMatrixd(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLoadMatrixf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLoadMatrixf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "m", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glLoadMatrixf",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glLoadMatrixf",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4177,12 +4359,13 @@ static PyObject *_wrap_glLoadMatrixf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLoadName(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLoadName(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     PyObject * _resultobj;
     GLuint  _arg0;
+    char *_kwnames[] = { "name", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glLoadName",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glLoadName",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4194,12 +4377,13 @@ static PyObject *_wrap_glLoadName(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glLogicOp(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glLogicOp(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "opcode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glLogicOp",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glLogicOp",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4211,7 +4395,7 @@ static PyObject *_wrap_glLogicOp(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMap1d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMap1d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble  _arg1;
@@ -4220,9 +4404,10 @@ static PyObject *_wrap_glMap1d(PyObject *self, PyObject *args) {
     GLint  _arg4;
     GLdouble * _arg5;
     PyObject * _argo5 = 0;
     GLint  _arg4;
     GLdouble * _arg5;
     PyObject * _argo5 = 0;
+    char *_kwnames[] = { "target","u1","u2","stride","order","points", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iddiiO:glMap1d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iddiiO:glMap1d",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
         return NULL;
     if (_argo5) {
         if (_argo5 == Py_None) { _arg5 = NULL; }
         return NULL;
     if (_argo5) {
         if (_argo5 == Py_None) { _arg5 = NULL; }
@@ -4241,7 +4426,7 @@ static PyObject *_wrap_glMap1d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMap1f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMap1f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
@@ -4250,9 +4435,10 @@ static PyObject *_wrap_glMap1f(PyObject *self, PyObject *args) {
     GLint  _arg4;
     GLfloat * _arg5;
     PyObject * _argo5 = 0;
     GLint  _arg4;
     GLfloat * _arg5;
     PyObject * _argo5 = 0;
+    char *_kwnames[] = { "target","u1","u2","stride","order","points", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iffiiO:glMap1f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iffiiO:glMap1f",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_argo5)) 
         return NULL;
     if (_argo5) {
         if (_argo5 == Py_None) { _arg5 = NULL; }
         return NULL;
     if (_argo5) {
         if (_argo5 == Py_None) { _arg5 = NULL; }
@@ -4271,7 +4457,7 @@ static PyObject *_wrap_glMap1f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMap2d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMap2d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLdouble  _arg1;
@@ -4284,9 +4470,10 @@ static PyObject *_wrap_glMap2d(PyObject *self, PyObject *args) {
     GLint  _arg8;
     GLdouble * _arg9;
     PyObject * _argo9 = 0;
     GLint  _arg8;
     GLdouble * _arg9;
     PyObject * _argo9 = 0;
+    char *_kwnames[] = { "target","u1","u2","ustride","uorder","v1","v2","vstride","vorder","points", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iddiiddiiO:glMap2d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argo9)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iddiiddiiO:glMap2d",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argo9)) 
         return NULL;
     if (_argo9) {
         if (_argo9 == Py_None) { _arg9 = NULL; }
         return NULL;
     if (_argo9) {
         if (_argo9 == Py_None) { _arg9 = NULL; }
@@ -4305,7 +4492,7 @@ static PyObject *_wrap_glMap2d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMap2f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMap2f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
@@ -4318,9 +4505,10 @@ static PyObject *_wrap_glMap2f(PyObject *self, PyObject *args) {
     GLint  _arg8;
     GLfloat * _arg9;
     PyObject * _argo9 = 0;
     GLint  _arg8;
     GLfloat * _arg9;
     PyObject * _argo9 = 0;
+    char *_kwnames[] = { "target","u1","u2","ustride","uorder","v1","v2","vstride","vorder","points", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iffiiffiiO:glMap2f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argo9)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iffiiffiiO:glMap2f",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_arg8,&_argo9)) 
         return NULL;
     if (_argo9) {
         if (_argo9 == Py_None) { _arg9 = NULL; }
         return NULL;
     if (_argo9) {
         if (_argo9 == Py_None) { _arg9 = NULL; }
@@ -4339,14 +4527,15 @@ static PyObject *_wrap_glMap2f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMapGrid1d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMapGrid1d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     PyObject * _resultobj;
     GLint  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
+    char *_kwnames[] = { "un","u1","u2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"idd:glMapGrid1d",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"idd:glMapGrid1d",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4358,14 +4547,15 @@ static PyObject *_wrap_glMapGrid1d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMapGrid1f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMapGrid1f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLint  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "un","u1","u2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iff:glMapGrid1f",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iff:glMapGrid1f",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4377,7 +4567,7 @@ static PyObject *_wrap_glMapGrid1f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMapGrid2d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMapGrid2d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLdouble  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLdouble  _arg1;
@@ -4385,9 +4575,10 @@ static PyObject *_wrap_glMapGrid2d(PyObject *self, PyObject *args) {
     GLint  _arg3;
     GLdouble  _arg4;
     GLdouble  _arg5;
     GLint  _arg3;
     GLdouble  _arg4;
     GLdouble  _arg5;
+    char *_kwnames[] = { "un","u1","u2","vn","v1","v2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iddidd:glMapGrid2d",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iddidd:glMapGrid2d",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4399,7 +4590,7 @@ static PyObject *_wrap_glMapGrid2d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMapGrid2f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMapGrid2f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLfloat  _arg1;
@@ -4407,9 +4598,10 @@ static PyObject *_wrap_glMapGrid2f(PyObject *self, PyObject *args) {
     GLint  _arg3;
     GLfloat  _arg4;
     GLfloat  _arg5;
     GLint  _arg3;
     GLfloat  _arg4;
     GLfloat  _arg5;
+    char *_kwnames[] = { "un","u1","u2","vn","v1","v2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iffiff:glMapGrid2f",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iffiff:glMapGrid2f",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4421,14 +4613,15 @@ static PyObject *_wrap_glMapGrid2f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMaterialf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMaterialf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "face","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iif:glMaterialf",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iif:glMaterialf",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4440,15 +4633,16 @@ static PyObject *_wrap_glMaterialf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMaterialfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMaterialfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "face","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glMaterialfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glMaterialfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -4467,14 +4661,15 @@ static PyObject *_wrap_glMaterialfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMateriali(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMateriali(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "face","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glMateriali",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glMateriali",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4486,15 +4681,16 @@ static PyObject *_wrap_glMateriali(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMaterialiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMaterialiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "face","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glMaterialiv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glMaterialiv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -4513,12 +4709,13 @@ static PyObject *_wrap_glMaterialiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMatrixMode(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMatrixMode(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glMatrixMode",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glMatrixMode",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4530,13 +4727,14 @@ static PyObject *_wrap_glMatrixMode(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMultMatrixd(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMultMatrixd(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "m", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glMultMatrixd",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glMultMatrixd",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4555,13 +4753,14 @@ static PyObject *_wrap_glMultMatrixd(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glMultMatrixf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glMultMatrixf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "m", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glMultMatrixf",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glMultMatrixf",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4580,13 +4779,14 @@ static PyObject *_wrap_glMultMatrixf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNewList(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNewList(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLuint  _arg0;
     GLenum  _arg1;
+    char *_kwnames[] = { "list","mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glNewList",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glNewList",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4598,14 +4798,15 @@ static PyObject *_wrap_glNewList(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3b(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3b(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLbyte  _arg0;
     GLbyte  _arg1;
     GLbyte  _arg2;
     PyObject * _resultobj;
     GLbyte  _arg0;
     GLbyte  _arg1;
     GLbyte  _arg2;
+    char *_kwnames[] = { "nx","ny","nz", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"bbb:glNormal3b",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"bbb:glNormal3b",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4617,13 +4818,14 @@ static PyObject *_wrap_glNormal3b(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3bv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3bv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLbyte * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLbyte * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glNormal3bv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glNormal3bv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4642,14 +4844,15 @@ static PyObject *_wrap_glNormal3bv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
+    char *_kwnames[] = { "nx","ny","nz", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ddd:glNormal3d",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ddd:glNormal3d",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4661,13 +4864,14 @@ static PyObject *_wrap_glNormal3d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glNormal3dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glNormal3dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4686,14 +4890,15 @@ static PyObject *_wrap_glNormal3dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "nx","ny","nz", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"fff:glNormal3f",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"fff:glNormal3f",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4705,13 +4910,14 @@ static PyObject *_wrap_glNormal3f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glNormal3fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glNormal3fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4730,14 +4936,15 @@ static PyObject *_wrap_glNormal3fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "nx","ny","nz", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glNormal3i",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glNormal3i",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4749,13 +4956,14 @@ static PyObject *_wrap_glNormal3i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glNormal3iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glNormal3iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4774,14 +4982,15 @@ static PyObject *_wrap_glNormal3iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
+    char *_kwnames[] = { "nx","ny","nz", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhh:glNormal3s",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhh:glNormal3s",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4793,13 +5002,14 @@ static PyObject *_wrap_glNormal3s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormal3sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormal3sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glNormal3sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glNormal3sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4818,15 +5028,16 @@ static PyObject *_wrap_glNormal3sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glNormalPointer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glNormalPointer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLvoid * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLvoid * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "type","stride","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glNormalPointer",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glNormalPointer",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -4845,7 +5056,7 @@ static PyObject *_wrap_glNormalPointer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glOrtho(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glOrtho(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
@@ -4853,9 +5064,10 @@ static PyObject *_wrap_glOrtho(PyObject *self, PyObject *args) {
     GLdouble  _arg3;
     GLdouble  _arg4;
     GLdouble  _arg5;
     GLdouble  _arg3;
     GLdouble  _arg4;
     GLdouble  _arg5;
+    char *_kwnames[] = { "left","right","bottom","top","zNear","zFar", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dddddd:glOrtho",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dddddd:glOrtho",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4867,12 +5079,13 @@ static PyObject *_wrap_glOrtho(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPassThrough(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPassThrough(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     PyObject * _resultobj;
     GLfloat  _arg0;
+    char *_kwnames[] = { "token", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"f:glPassThrough",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"f:glPassThrough",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4884,15 +5097,16 @@ static PyObject *_wrap_glPassThrough(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPixelMapfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPixelMapfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "map","mapsize","values", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glPixelMapfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glPixelMapfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -4911,15 +5125,16 @@ static PyObject *_wrap_glPixelMapfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPixelMapuiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPixelMapuiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLuint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLuint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "map","mapsize","values", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glPixelMapuiv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glPixelMapuiv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -4938,15 +5153,16 @@ static PyObject *_wrap_glPixelMapuiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPixelMapusv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPixelMapusv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLushort * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLsizei  _arg1;
     GLushort * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "map","mapsize","values", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glPixelMapusv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glPixelMapusv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -4965,13 +5181,14 @@ static PyObject *_wrap_glPixelMapusv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPixelStoref(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPixelStoref(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"if:glPixelStoref",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"if:glPixelStoref",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -4983,13 +5200,14 @@ static PyObject *_wrap_glPixelStoref(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPixelStorei(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPixelStorei(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
+    char *_kwnames[] = { "pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glPixelStorei",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glPixelStorei",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5001,13 +5219,14 @@ static PyObject *_wrap_glPixelStorei(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPixelTransferf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPixelTransferf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"if:glPixelTransferf",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"if:glPixelTransferf",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5019,13 +5238,14 @@ static PyObject *_wrap_glPixelTransferf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPixelTransferi(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPixelTransferi(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
+    char *_kwnames[] = { "pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glPixelTransferi",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glPixelTransferi",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5037,13 +5257,14 @@ static PyObject *_wrap_glPixelTransferi(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPixelZoom(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPixelZoom(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "xfactor","yfactor", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ff:glPixelZoom",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ff:glPixelZoom",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5055,12 +5276,13 @@ static PyObject *_wrap_glPixelZoom(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPointSize(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPointSize(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     PyObject * _resultobj;
     GLfloat  _arg0;
+    char *_kwnames[] = { "size", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"f:glPointSize",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"f:glPointSize",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5072,13 +5294,14 @@ static PyObject *_wrap_glPointSize(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPolygonMode(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPolygonMode(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
+    char *_kwnames[] = { "face","mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glPolygonMode",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glPolygonMode",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5090,13 +5313,14 @@ static PyObject *_wrap_glPolygonMode(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPolygonOffset(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPolygonOffset(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "factor","units", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ff:glPolygonOffset",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ff:glPolygonOffset",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5108,13 +5332,14 @@ static PyObject *_wrap_glPolygonOffset(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPolygonStipple(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPolygonStipple(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLubyte * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "mask", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glPolygonStipple",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glPolygonStipple",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5133,11 +5358,12 @@ static PyObject *_wrap_glPolygonStipple(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPopAttrib(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPopAttrib(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glPopAttrib")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glPopAttrib",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5149,11 +5375,12 @@ static PyObject *_wrap_glPopAttrib(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPopClientAttrib(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPopClientAttrib(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glPopClientAttrib")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glPopClientAttrib",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5165,11 +5392,12 @@ static PyObject *_wrap_glPopClientAttrib(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPopMatrix(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPopMatrix(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glPopMatrix")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glPopMatrix",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5181,11 +5409,12 @@ static PyObject *_wrap_glPopMatrix(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPopName(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPopName(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glPopName")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glPopName",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5197,16 +5426,17 @@ static PyObject *_wrap_glPopName(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPrioritizeTextures(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPrioritizeTextures(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
     GLclampf * _arg2;
     PyObject * _argo1 = 0;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
     GLclampf * _arg2;
     PyObject * _argo1 = 0;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "n","textures","priorities", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iOO:glPrioritizeTextures",&_arg0,&_argo1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iOO:glPrioritizeTextures",_kwnames,&_arg0,&_argo1,&_argo2)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -5232,12 +5462,13 @@ static PyObject *_wrap_glPrioritizeTextures(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPushAttrib(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPushAttrib(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLbitfield  _arg0;
     PyObject * _resultobj;
     GLbitfield  _arg0;
+    char *_kwnames[] = { "mask", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glPushAttrib",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glPushAttrib",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5249,12 +5480,13 @@ static PyObject *_wrap_glPushAttrib(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPushClientAttrib(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPushClientAttrib(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLbitfield  _arg0;
     PyObject * _resultobj;
     GLbitfield  _arg0;
+    char *_kwnames[] = { "mask", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glPushClientAttrib",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glPushClientAttrib",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5266,11 +5498,12 @@ static PyObject *_wrap_glPushClientAttrib(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPushMatrix(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPushMatrix(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
+    char *_kwnames[] = {  NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,":glPushMatrix")) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":glPushMatrix",_kwnames)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5282,12 +5515,13 @@ static PyObject *_wrap_glPushMatrix(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glPushName(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glPushName(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     PyObject * _resultobj;
     GLuint  _arg0;
+    char *_kwnames[] = { "name", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glPushName",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glPushName",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5299,13 +5533,14 @@ static PyObject *_wrap_glPushName(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos2d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos2d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
+    char *_kwnames[] = { "x","y", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dd:glRasterPos2d",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dd:glRasterPos2d",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5317,13 +5552,14 @@ static PyObject *_wrap_glRasterPos2d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos2dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos2dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos2dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos2dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5342,13 +5578,14 @@ static PyObject *_wrap_glRasterPos2dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos2f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos2f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "x","y", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ff:glRasterPos2f",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ff:glRasterPos2f",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5360,13 +5597,14 @@ static PyObject *_wrap_glRasterPos2f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos2fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos2fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos2fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos2fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5385,13 +5623,14 @@ static PyObject *_wrap_glRasterPos2fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos2i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos2i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
+    char *_kwnames[] = { "x","y", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glRasterPos2i",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glRasterPos2i",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5403,13 +5642,14 @@ static PyObject *_wrap_glRasterPos2i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos2iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos2iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos2iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos2iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5428,13 +5668,14 @@ static PyObject *_wrap_glRasterPos2iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos2s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos2s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
+    char *_kwnames[] = { "x","y", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hh:glRasterPos2s",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hh:glRasterPos2s",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5446,13 +5687,14 @@ static PyObject *_wrap_glRasterPos2s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos2sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos2sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos2sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos2sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5471,14 +5713,15 @@ static PyObject *_wrap_glRasterPos2sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos3d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos3d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ddd:glRasterPos3d",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ddd:glRasterPos3d",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5490,13 +5733,14 @@ static PyObject *_wrap_glRasterPos3d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos3dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos3dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos3dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos3dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5515,14 +5759,15 @@ static PyObject *_wrap_glRasterPos3dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos3f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos3f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"fff:glRasterPos3f",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"fff:glRasterPos3f",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5534,13 +5779,14 @@ static PyObject *_wrap_glRasterPos3f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos3fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos3fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos3fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos3fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5559,14 +5805,15 @@ static PyObject *_wrap_glRasterPos3fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos3i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos3i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glRasterPos3i",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glRasterPos3i",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5578,13 +5825,14 @@ static PyObject *_wrap_glRasterPos3i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos3iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos3iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos3iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos3iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5603,14 +5851,15 @@ static PyObject *_wrap_glRasterPos3iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos3s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos3s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhh:glRasterPos3s",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhh:glRasterPos3s",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5622,13 +5871,14 @@ static PyObject *_wrap_glRasterPos3s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos3sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos3sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos3sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos3sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5647,15 +5897,16 @@ static PyObject *_wrap_glRasterPos3sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos4d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos4d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
+    char *_kwnames[] = { "x","y","z","w", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dddd:glRasterPos4d",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dddd:glRasterPos4d",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5667,13 +5918,14 @@ static PyObject *_wrap_glRasterPos4d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos4dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos4dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos4dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos4dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5692,15 +5944,16 @@ static PyObject *_wrap_glRasterPos4dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos4f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos4f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
+    char *_kwnames[] = { "x","y","z","w", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ffff:glRasterPos4f",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ffff:glRasterPos4f",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5712,13 +5965,14 @@ static PyObject *_wrap_glRasterPos4f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos4fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos4fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos4fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos4fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5737,15 +5991,16 @@ static PyObject *_wrap_glRasterPos4fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos4i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos4i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
+    char *_kwnames[] = { "x","y","z","w", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiii:glRasterPos4i",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiii:glRasterPos4i",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5757,13 +6012,14 @@ static PyObject *_wrap_glRasterPos4i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos4iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos4iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos4iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos4iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5782,15 +6038,16 @@ static PyObject *_wrap_glRasterPos4iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos4s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos4s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
+    char *_kwnames[] = { "x","y","z","w", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhhh:glRasterPos4s",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhhh:glRasterPos4s",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5802,13 +6059,14 @@ static PyObject *_wrap_glRasterPos4s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRasterPos4sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRasterPos4sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glRasterPos4sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glRasterPos4sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5827,12 +6085,13 @@ static PyObject *_wrap_glRasterPos4sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glReadBuffer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glReadBuffer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glReadBuffer",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glReadBuffer",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5844,7 +6103,7 @@ static PyObject *_wrap_glReadBuffer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glReadPixels(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glReadPixels(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
@@ -5854,9 +6113,10 @@ static PyObject *_wrap_glReadPixels(PyObject *self, PyObject *args) {
     GLenum  _arg5;
     GLvoid * _arg6;
     PyObject * _argo6 = 0;
     GLenum  _arg5;
     GLvoid * _arg6;
     PyObject * _argo6 = 0;
+    char *_kwnames[] = { "x","y","width","height","format","type","pixels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiO:glReadPixels",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argo6)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiiO:glReadPixels",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argo6)) 
         return NULL;
     if (_argo6) {
         if (_argo6 == Py_None) { _arg6 = NULL; }
         return NULL;
     if (_argo6) {
         if (_argo6 == Py_None) { _arg6 = NULL; }
@@ -5875,15 +6135,16 @@ static PyObject *_wrap_glReadPixels(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRectd(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRectd(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
+    char *_kwnames[] = { "x1","y1","x2","y2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dddd:glRectd",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dddd:glRectd",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5895,15 +6156,16 @@ static PyObject *_wrap_glRectd(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRectdv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRectdv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     GLdouble * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     GLdouble * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "v1","v2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"OO:glRectdv",&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:glRectdv",_kwnames,&_argo0,&_argo1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5929,15 +6191,16 @@ static PyObject *_wrap_glRectdv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRectf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRectf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
+    char *_kwnames[] = { "x1","y1","x2","y2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ffff:glRectf",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ffff:glRectf",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -5949,15 +6212,16 @@ static PyObject *_wrap_glRectf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRectfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRectfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     GLfloat * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     GLfloat * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "v1","v2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"OO:glRectfv",&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:glRectfv",_kwnames,&_argo0,&_argo1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -5983,15 +6247,16 @@ static PyObject *_wrap_glRectfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRecti(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRecti(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
+    char *_kwnames[] = { "x1","y1","x2","y2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiii:glRecti",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiii:glRecti",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6003,15 +6268,16 @@ static PyObject *_wrap_glRecti(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRectiv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRectiv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     GLint * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     GLint * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "v1","v2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"OO:glRectiv",&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:glRectiv",_kwnames,&_argo0,&_argo1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6037,15 +6303,16 @@ static PyObject *_wrap_glRectiv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRects(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRects(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
+    char *_kwnames[] = { "x1","y1","x2","y2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhhh:glRects",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhhh:glRects",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6057,15 +6324,16 @@ static PyObject *_wrap_glRects(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRectsv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRectsv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     GLshort * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     GLshort * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "v1","v2", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"OO:glRectsv",&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:glRectsv",_kwnames,&_argo0,&_argo1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6091,13 +6359,14 @@ static PyObject *_wrap_glRectsv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRenderMode(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRenderMode(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _result;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLint  _result;
     GLenum  _arg0;
+    char *_kwnames[] = { "mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glRenderMode",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glRenderMode",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6108,15 +6377,16 @@ static PyObject *_wrap_glRenderMode(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRotated(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRotated(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
+    char *_kwnames[] = { "angle","x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dddd:glRotated",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dddd:glRotated",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6128,15 +6398,16 @@ static PyObject *_wrap_glRotated(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glRotatef(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glRotatef(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
+    char *_kwnames[] = { "angle","x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ffff:glRotatef",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ffff:glRotatef",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6148,14 +6419,15 @@ static PyObject *_wrap_glRotatef(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glScaled(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glScaled(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ddd:glScaled",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ddd:glScaled",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6167,14 +6439,15 @@ static PyObject *_wrap_glScaled(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glScalef(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glScalef(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"fff:glScalef",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"fff:glScalef",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6186,15 +6459,16 @@ static PyObject *_wrap_glScalef(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glScissor(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glScissor(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     GLsizei  _arg3;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     GLsizei  _arg3;
+    char *_kwnames[] = { "x","y","width","height", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiii:glScissor",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiii:glScissor",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6206,14 +6480,15 @@ static PyObject *_wrap_glScissor(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glSelectBuffer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glSelectBuffer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
     PyObject * _argo1 = 0;
     PyObject * _resultobj;
     GLsizei  _arg0;
     GLuint * _arg1;
     PyObject * _argo1 = 0;
+    char *_kwnames[] = { "size","buffer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO:glSelectBuffer",&_arg0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO:glSelectBuffer",_kwnames,&_arg0,&_argo1)) 
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
@@ -6232,12 +6507,13 @@ static PyObject *_wrap_glSelectBuffer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glShadeModel(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glShadeModel(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     PyObject * _resultobj;
     GLenum  _arg0;
+    char *_kwnames[] = { "mode", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glShadeModel",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glShadeModel",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6249,14 +6525,15 @@ static PyObject *_wrap_glShadeModel(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glStencilFunc(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glStencilFunc(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLuint  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     GLuint  _arg2;
+    char *_kwnames[] = { "func","ref","mask", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glStencilFunc",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glStencilFunc",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6268,12 +6545,13 @@ static PyObject *_wrap_glStencilFunc(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glStencilMask(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glStencilMask(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLuint  _arg0;
     PyObject * _resultobj;
     GLuint  _arg0;
+    char *_kwnames[] = { "mask", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glStencilMask",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glStencilMask",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6285,14 +6563,15 @@ static PyObject *_wrap_glStencilMask(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glStencilOp(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glStencilOp(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLenum  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLenum  _arg2;
+    char *_kwnames[] = { "fail","zfail","zpass", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glStencilOp",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glStencilOp",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6304,12 +6583,13 @@ static PyObject *_wrap_glStencilOp(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord1d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord1d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     PyObject * _resultobj;
     GLdouble  _arg0;
+    char *_kwnames[] = { "s", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"d:glTexCoord1d",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"d:glTexCoord1d",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6321,13 +6601,14 @@ static PyObject *_wrap_glTexCoord1d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord1dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord1dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord1dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord1dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6346,12 +6627,13 @@ static PyObject *_wrap_glTexCoord1dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord1f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord1f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     PyObject * _resultobj;
     GLfloat  _arg0;
+    char *_kwnames[] = { "s", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"f:glTexCoord1f",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"f:glTexCoord1f",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6363,13 +6645,14 @@ static PyObject *_wrap_glTexCoord1f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord1fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord1fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord1fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord1fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6388,12 +6671,13 @@ static PyObject *_wrap_glTexCoord1fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord1i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord1i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     PyObject * _resultobj;
     GLint  _arg0;
+    char *_kwnames[] = { "s", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"i:glTexCoord1i",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"i:glTexCoord1i",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6405,13 +6689,14 @@ static PyObject *_wrap_glTexCoord1i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord1iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord1iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord1iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord1iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6430,12 +6715,13 @@ static PyObject *_wrap_glTexCoord1iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord1s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord1s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     PyObject * _resultobj;
     GLshort  _arg0;
+    char *_kwnames[] = { "s", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"h:glTexCoord1s",&_arg0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"h:glTexCoord1s",_kwnames,&_arg0)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6447,13 +6733,14 @@ static PyObject *_wrap_glTexCoord1s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord1sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord1sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord1sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord1sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6472,13 +6759,14 @@ static PyObject *_wrap_glTexCoord1sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord2d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord2d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
+    char *_kwnames[] = { "s","t", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dd:glTexCoord2d",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dd:glTexCoord2d",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6490,13 +6778,14 @@ static PyObject *_wrap_glTexCoord2d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord2dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord2dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord2dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord2dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6515,13 +6804,14 @@ static PyObject *_wrap_glTexCoord2dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord2f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord2f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "s","t", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ff:glTexCoord2f",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ff:glTexCoord2f",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6533,13 +6823,14 @@ static PyObject *_wrap_glTexCoord2f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord2fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord2fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord2fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord2fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6558,13 +6849,14 @@ static PyObject *_wrap_glTexCoord2fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord2i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord2i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
+    char *_kwnames[] = { "s","t", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glTexCoord2i",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glTexCoord2i",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6576,13 +6868,14 @@ static PyObject *_wrap_glTexCoord2i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord2iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord2iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord2iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord2iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6601,13 +6894,14 @@ static PyObject *_wrap_glTexCoord2iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord2s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord2s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
+    char *_kwnames[] = { "s","t", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hh:glTexCoord2s",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hh:glTexCoord2s",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6619,13 +6913,14 @@ static PyObject *_wrap_glTexCoord2s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord2sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord2sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord2sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord2sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6644,14 +6939,15 @@ static PyObject *_wrap_glTexCoord2sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord3d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord3d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
+    char *_kwnames[] = { "s","t","r", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ddd:glTexCoord3d",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ddd:glTexCoord3d",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6663,13 +6959,14 @@ static PyObject *_wrap_glTexCoord3d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord3dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord3dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord3dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord3dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6688,14 +6985,15 @@ static PyObject *_wrap_glTexCoord3dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord3f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord3f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "s","t","r", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"fff:glTexCoord3f",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"fff:glTexCoord3f",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6707,13 +7005,14 @@ static PyObject *_wrap_glTexCoord3f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord3fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord3fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord3fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord3fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6732,14 +7031,15 @@ static PyObject *_wrap_glTexCoord3fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord3i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord3i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "s","t","r", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glTexCoord3i",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glTexCoord3i",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6751,13 +7051,14 @@ static PyObject *_wrap_glTexCoord3i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord3iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord3iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord3iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord3iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6776,14 +7077,15 @@ static PyObject *_wrap_glTexCoord3iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord3s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord3s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
+    char *_kwnames[] = { "s","t","r", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhh:glTexCoord3s",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhh:glTexCoord3s",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6795,13 +7097,14 @@ static PyObject *_wrap_glTexCoord3s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord3sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord3sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord3sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord3sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6820,15 +7123,16 @@ static PyObject *_wrap_glTexCoord3sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord4d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord4d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
+    char *_kwnames[] = { "s","t","r","q", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dddd:glTexCoord4d",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dddd:glTexCoord4d",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6840,13 +7144,14 @@ static PyObject *_wrap_glTexCoord4d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord4dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord4dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord4dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord4dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6865,15 +7170,16 @@ static PyObject *_wrap_glTexCoord4dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord4f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord4f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
+    char *_kwnames[] = { "s","t","r","q", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ffff:glTexCoord4f",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ffff:glTexCoord4f",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6885,13 +7191,14 @@ static PyObject *_wrap_glTexCoord4f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord4fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord4fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord4fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord4fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6910,15 +7217,16 @@ static PyObject *_wrap_glTexCoord4fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord4i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord4i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
+    char *_kwnames[] = { "s","t","r","q", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiii:glTexCoord4i",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiii:glTexCoord4i",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6930,13 +7238,14 @@ static PyObject *_wrap_glTexCoord4i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord4iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord4iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord4iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord4iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -6955,15 +7264,16 @@ static PyObject *_wrap_glTexCoord4iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord4s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord4s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
+    char *_kwnames[] = { "s","t","r","q", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhhh:glTexCoord4s",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhhh:glTexCoord4s",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -6975,13 +7285,14 @@ static PyObject *_wrap_glTexCoord4s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoord4sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoord4sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glTexCoord4sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glTexCoord4sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7000,16 +7311,17 @@ static PyObject *_wrap_glTexCoord4sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexCoordPointer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexCoordPointer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
+    char *_kwnames[] = { "size","type","stride","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiO:glTexCoordPointer",&_arg0,&_arg1,&_arg2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiO:glTexCoordPointer",_kwnames,&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
@@ -7028,14 +7340,15 @@ static PyObject *_wrap_glTexCoordPointer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexEnvf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexEnvf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "target","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iif:glTexEnvf",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iif:glTexEnvf",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7047,15 +7360,16 @@ static PyObject *_wrap_glTexEnvf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexEnvfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexEnvfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glTexEnvfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glTexEnvfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -7074,14 +7388,15 @@ static PyObject *_wrap_glTexEnvfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexEnvi(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexEnvi(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "target","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glTexEnvi",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glTexEnvi",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7093,15 +7408,16 @@ static PyObject *_wrap_glTexEnvi(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexEnviv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexEnviv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glTexEnviv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glTexEnviv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -7120,14 +7436,15 @@ static PyObject *_wrap_glTexEnviv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexGend(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexGend(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble  _arg2;
+    char *_kwnames[] = { "coord","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iid:glTexGend",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iid:glTexGend",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7139,15 +7456,16 @@ static PyObject *_wrap_glTexGend(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexGendv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexGendv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLdouble * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "coord","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glTexGendv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glTexGendv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -7166,14 +7484,15 @@ static PyObject *_wrap_glTexGendv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexGenf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexGenf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "coord","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iif:glTexGenf",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iif:glTexGenf",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7185,15 +7504,16 @@ static PyObject *_wrap_glTexGenf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexGenfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexGenfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "coord","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glTexGenfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glTexGenfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -7212,14 +7532,15 @@ static PyObject *_wrap_glTexGenfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexGeni(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexGeni(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "coord","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glTexGeni",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glTexGeni",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7231,15 +7552,16 @@ static PyObject *_wrap_glTexGeni(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexGeniv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexGeniv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "coord","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glTexGeniv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glTexGeniv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -7258,7 +7580,7 @@ static PyObject *_wrap_glTexGeniv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexImage1D(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexImage1D(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
@@ -7269,9 +7591,10 @@ static PyObject *_wrap_glTexImage1D(PyObject *self, PyObject *args) {
     GLenum  _arg6;
     GLvoid * _arg7;
     PyObject * _argo7 = 0;
     GLenum  _arg6;
     GLvoid * _arg7;
     PyObject * _argo7 = 0;
+    char *_kwnames[] = { "target","level","internalformat","width","border","format","type","pixels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiiO:glTexImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_argo7)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiiiO:glTexImage1D",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_argo7)) 
         return NULL;
     if (_argo7) {
         if (_argo7 == Py_None) { _arg7 = NULL; }
         return NULL;
     if (_argo7) {
         if (_argo7 == Py_None) { _arg7 = NULL; }
@@ -7290,7 +7613,7 @@ static PyObject *_wrap_glTexImage1D(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexImage2D(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexImage2D(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
@@ -7302,9 +7625,10 @@ static PyObject *_wrap_glTexImage2D(PyObject *self, PyObject *args) {
     GLenum  _arg7;
     GLvoid * _arg8;
     PyObject * _argo8 = 0;
     GLenum  _arg7;
     GLvoid * _arg8;
     PyObject * _argo8 = 0;
+    char *_kwnames[] = { "target","level","internalformat","width","height","border","format","type","pixels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiiiO:glTexImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argo8)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiiiiO:glTexImage2D",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argo8)) 
         return NULL;
     if (_argo8) {
         if (_argo8 == Py_None) { _arg8 = NULL; }
         return NULL;
     if (_argo8) {
         if (_argo8 == Py_None) { _arg8 = NULL; }
@@ -7323,14 +7647,15 @@ static PyObject *_wrap_glTexImage2D(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexParameterf(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexParameterf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "target","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iif:glTexParameterf",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iif:glTexParameterf",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7342,15 +7667,16 @@ static PyObject *_wrap_glTexParameterf(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexParameterfv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexParameterfv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLfloat * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glTexParameterfv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glTexParameterfv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -7369,14 +7695,15 @@ static PyObject *_wrap_glTexParameterfv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexParameteri(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexParameteri(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "target","pname","param", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glTexParameteri",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glTexParameteri",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7388,15 +7715,16 @@ static PyObject *_wrap_glTexParameteri(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexParameteriv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexParameteriv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLenum  _arg1;
     GLint * _arg2;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "target","pname","params", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiO:glTexParameteriv",&_arg0,&_arg1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiO:glTexParameteriv",_kwnames,&_arg0,&_arg1,&_argo2)) 
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
         return NULL;
     if (_argo2) {
         if (_argo2 == Py_None) { _arg2 = NULL; }
@@ -7415,7 +7743,7 @@ static PyObject *_wrap_glTexParameteriv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexSubImage1D(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexSubImage1D(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
@@ -7425,9 +7753,10 @@ static PyObject *_wrap_glTexSubImage1D(PyObject *self, PyObject *args) {
     GLenum  _arg5;
     GLvoid * _arg6;
     PyObject * _argo6 = 0;
     GLenum  _arg5;
     GLvoid * _arg6;
     PyObject * _argo6 = 0;
+    char *_kwnames[] = { "target","level","xoffset","width","format","type","pixels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiO:glTexSubImage1D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argo6)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiiO:glTexSubImage1D",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_argo6)) 
         return NULL;
     if (_argo6) {
         if (_argo6 == Py_None) { _arg6 = NULL; }
         return NULL;
     if (_argo6) {
         if (_argo6 == Py_None) { _arg6 = NULL; }
@@ -7446,7 +7775,7 @@ static PyObject *_wrap_glTexSubImage1D(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTexSubImage2D(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTexSubImage2D(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLenum  _arg0;
     GLint  _arg1;
@@ -7458,9 +7787,10 @@ static PyObject *_wrap_glTexSubImage2D(PyObject *self, PyObject *args) {
     GLenum  _arg7;
     GLvoid * _arg8;
     PyObject * _argo8 = 0;
     GLenum  _arg7;
     GLvoid * _arg8;
     PyObject * _argo8 = 0;
+    char *_kwnames[] = { "target","level","xoffset","yoffset","width","height","format","type","pixels", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiiiiiiO:glTexSubImage2D",&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argo8)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiiiiiiO:glTexSubImage2D",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_arg4,&_arg5,&_arg6,&_arg7,&_argo8)) 
         return NULL;
     if (_argo8) {
         if (_argo8 == Py_None) { _arg8 = NULL; }
         return NULL;
     if (_argo8) {
         if (_argo8 == Py_None) { _arg8 = NULL; }
@@ -7479,14 +7809,15 @@ static PyObject *_wrap_glTexSubImage2D(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTranslated(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTranslated(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ddd:glTranslated",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ddd:glTranslated",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7498,14 +7829,15 @@ static PyObject *_wrap_glTranslated(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glTranslatef(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glTranslatef(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"fff:glTranslatef",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"fff:glTranslatef",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7517,13 +7849,14 @@ static PyObject *_wrap_glTranslatef(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex2d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex2d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
+    char *_kwnames[] = { "x","y", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dd:glVertex2d",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dd:glVertex2d",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7535,13 +7868,14 @@ static PyObject *_wrap_glVertex2d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex2dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex2dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex2dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex2dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7560,13 +7894,14 @@ static PyObject *_wrap_glVertex2dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex2f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex2f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
+    char *_kwnames[] = { "x","y", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ff:glVertex2f",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ff:glVertex2f",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7578,13 +7913,14 @@ static PyObject *_wrap_glVertex2f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex2fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex2fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex2fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex2fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7603,13 +7939,14 @@ static PyObject *_wrap_glVertex2fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex2i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex2i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
+    char *_kwnames[] = { "x","y", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ii:glVertex2i",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ii:glVertex2i",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7621,13 +7958,14 @@ static PyObject *_wrap_glVertex2i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex2iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex2iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex2iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex2iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7646,13 +7984,14 @@ static PyObject *_wrap_glVertex2iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex2s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex2s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
+    char *_kwnames[] = { "x","y", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hh:glVertex2s",&_arg0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hh:glVertex2s",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7664,13 +8003,14 @@ static PyObject *_wrap_glVertex2s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex2sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex2sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex2sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex2sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7689,14 +8029,15 @@ static PyObject *_wrap_glVertex2sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex3d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex3d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ddd:glVertex3d",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ddd:glVertex3d",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7708,13 +8049,14 @@ static PyObject *_wrap_glVertex3d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex3dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex3dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex3dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex3dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7733,14 +8075,15 @@ static PyObject *_wrap_glVertex3dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex3f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex3f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"fff:glVertex3f",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"fff:glVertex3f",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7752,13 +8095,14 @@ static PyObject *_wrap_glVertex3f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex3fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex3fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex3fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex3fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7777,14 +8121,15 @@ static PyObject *_wrap_glVertex3fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex3i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex3i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iii:glVertex3i",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iii:glVertex3i",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7796,13 +8141,14 @@ static PyObject *_wrap_glVertex3i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex3iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex3iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex3iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex3iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7821,14 +8167,15 @@ static PyObject *_wrap_glVertex3iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex3s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex3s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
+    char *_kwnames[] = { "x","y","z", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhh:glVertex3s",&_arg0,&_arg1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhh:glVertex3s",_kwnames,&_arg0,&_arg1,&_arg2)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7840,13 +8187,14 @@ static PyObject *_wrap_glVertex3s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex3sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex3sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex3sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex3sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7865,15 +8213,16 @@ static PyObject *_wrap_glVertex3sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex4d(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex4d(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
     PyObject * _resultobj;
     GLdouble  _arg0;
     GLdouble  _arg1;
     GLdouble  _arg2;
     GLdouble  _arg3;
+    char *_kwnames[] = { "x","y","z","w", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"dddd:glVertex4d",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"dddd:glVertex4d",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7885,13 +8234,14 @@ static PyObject *_wrap_glVertex4d(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex4dv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex4dv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLdouble * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex4dv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex4dv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7910,15 +8260,16 @@ static PyObject *_wrap_glVertex4dv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex4f(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex4f(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
     PyObject * _resultobj;
     GLfloat  _arg0;
     GLfloat  _arg1;
     GLfloat  _arg2;
     GLfloat  _arg3;
+    char *_kwnames[] = { "x","y","z","w", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"ffff:glVertex4f",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"ffff:glVertex4f",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7930,13 +8281,14 @@ static PyObject *_wrap_glVertex4f(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex4fv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex4fv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLfloat * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex4fv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex4fv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -7955,15 +8307,16 @@ static PyObject *_wrap_glVertex4fv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex4i(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex4i(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLint  _arg2;
     GLint  _arg3;
+    char *_kwnames[] = { "x","y","z","w", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiii:glVertex4i",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiii:glVertex4i",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -7975,13 +8328,14 @@ static PyObject *_wrap_glVertex4i(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex4iv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex4iv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLint * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex4iv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex4iv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8000,15 +8354,16 @@ static PyObject *_wrap_glVertex4iv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex4s(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex4s(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
     PyObject * _resultobj;
     GLshort  _arg0;
     GLshort  _arg1;
     GLshort  _arg2;
     GLshort  _arg3;
+    char *_kwnames[] = { "x","y","z","w", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"hhhh:glVertex4s",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"hhhh:glVertex4s",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -8020,13 +8375,14 @@ static PyObject *_wrap_glVertex4s(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertex4sv(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertex4sv(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     GLshort * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "v", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:glVertex4sv",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:glVertex4sv",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8045,16 +8401,17 @@ static PyObject *_wrap_glVertex4sv(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glVertexPointer(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glVertexPointer(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
     PyObject * _resultobj;
     GLint  _arg0;
     GLenum  _arg1;
     GLsizei  _arg2;
     GLvoid * _arg3;
     PyObject * _argo3 = 0;
+    char *_kwnames[] = { "size","type","stride","pointer", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiiO:glVertexPointer",&_arg0,&_arg1,&_arg2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiiO:glVertexPointer",_kwnames,&_arg0,&_arg1,&_arg2,&_argo3)) 
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
         return NULL;
     if (_argo3) {
         if (_argo3 == Py_None) { _arg3 = NULL; }
@@ -8073,15 +8430,16 @@ static PyObject *_wrap_glVertexPointer(PyObject *self, PyObject *args) {
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static PyObject *_wrap_glViewport(PyObject *self, PyObject *args) {
+static PyObject *_wrap_glViewport(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     GLsizei  _arg3;
     PyObject * _resultobj;
     GLint  _arg0;
     GLint  _arg1;
     GLsizei  _arg2;
     GLsizei  _arg3;
+    char *_kwnames[] = { "x","y","width","height", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iiii:glViewport",&_arg0,&_arg1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiii:glViewport",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3)) 
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
 {
     wxPy_BEGIN_ALLOW_THREADS;
@@ -8094,7 +8452,7 @@ static PyObject *_wrap_glViewport(PyObject *self, PyObject *args) {
 }
 
 #define new_wxGLContext(_swigarg0,_swigarg1,_swigarg2) (new wxGLContext(_swigarg0,_swigarg1,_swigarg2))
 }
 
 #define new_wxGLContext(_swigarg0,_swigarg1,_swigarg2) (new wxGLContext(_swigarg0,_swigarg1,_swigarg2))
-static PyObject *_wrap_new_wxGLContext(PyObject *self, PyObject *args) {
+static PyObject *_wrap_new_wxGLContext(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLContext * _result;
     bool  _arg0;
     PyObject * _resultobj;
     wxGLContext * _result;
     bool  _arg0;
@@ -8103,10 +8461,11 @@ static PyObject *_wrap_new_wxGLContext(PyObject *self, PyObject *args) {
     int tempbool0;
     PyObject * _argo1 = 0;
     PyObject * _argo2 = 0;
     int tempbool0;
     PyObject * _argo1 = 0;
     PyObject * _argo2 = 0;
+    char *_kwnames[] = { "isRGB","win","palette", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"iO|O:new_wxGLContext",&tempbool0,&_argo1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iO|O:new_wxGLContext",_kwnames,&tempbool0,&_argo1,&_argo2)) 
         return NULL;
     _arg0 = (bool ) tempbool0;
     if (_argo1) {
         return NULL;
     _arg0 = (bool ) tempbool0;
     if (_argo1) {
@@ -8139,13 +8498,14 @@ static PyObject *_wrap_new_wxGLContext(PyObject *self, PyObject *args) {
 }
 
 #define delete_wxGLContext(_swigobj) (delete _swigobj)
 }
 
 #define delete_wxGLContext(_swigobj) (delete _swigobj)
-static PyObject *_wrap_delete_wxGLContext(PyObject *self, PyObject *args) {
+static PyObject *_wrap_delete_wxGLContext(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLContext * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     wxGLContext * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:delete_wxGLContext",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:delete_wxGLContext",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8165,13 +8525,14 @@ static PyObject *_wrap_delete_wxGLContext(PyObject *self, PyObject *args) {
 }
 
 #define wxGLContext_SetCurrent(_swigobj)  (_swigobj->SetCurrent())
 }
 
 #define wxGLContext_SetCurrent(_swigobj)  (_swigobj->SetCurrent())
-static PyObject *_wrap_wxGLContext_SetCurrent(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGLContext_SetCurrent(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLContext * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     wxGLContext * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:wxGLContext_SetCurrent",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGLContext_SetCurrent",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8191,14 +8552,15 @@ static PyObject *_wrap_wxGLContext_SetCurrent(PyObject *self, PyObject *args) {
 }
 
 #define wxGLContext_SetColour(_swigobj,_swigarg0)  (_swigobj->SetColour(_swigarg0))
 }
 
 #define wxGLContext_SetColour(_swigobj,_swigarg0)  (_swigobj->SetColour(_swigarg0))
-static PyObject *_wrap_wxGLContext_SetColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGLContext_SetColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLContext * _arg0;
     char * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     wxGLContext * _arg0;
     char * _arg1;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","colour", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"Os:wxGLContext_SetColour",&_argo0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Os:wxGLContext_SetColour",_kwnames,&_argo0,&_arg1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8218,13 +8580,14 @@ static PyObject *_wrap_wxGLContext_SetColour(PyObject *self, PyObject *args) {
 }
 
 #define wxGLContext_SwapBuffers(_swigobj)  (_swigobj->SwapBuffers())
 }
 
 #define wxGLContext_SwapBuffers(_swigobj)  (_swigobj->SwapBuffers())
-static PyObject *_wrap_wxGLContext_SwapBuffers(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGLContext_SwapBuffers(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLContext * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     wxGLContext * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:wxGLContext_SwapBuffers",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGLContext_SwapBuffers",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8244,15 +8607,16 @@ static PyObject *_wrap_wxGLContext_SwapBuffers(PyObject *self, PyObject *args) {
 }
 
 #define wxGLContext_GetWindow(_swigobj)  (_swigobj->GetWindow())
 }
 
 #define wxGLContext_GetWindow(_swigobj)  (_swigobj->GetWindow())
-static PyObject *_wrap_wxGLContext_GetWindow(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGLContext_GetWindow(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxWindow * _result;
     wxGLContext * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     wxWindow * _result;
     wxGLContext * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:wxGLContext_GetWindow",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGLContext_GetWindow",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8309,7 +8673,7 @@ static void *SwigwxGLCanvasTowxEvtHandler(void *ptr) {
 }
 
 #define new_wxGLCanvas(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6,_swigarg7) (new wxGLCanvas(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6,_swigarg7))
 }
 
 #define new_wxGLCanvas(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6,_swigarg7) (new wxGLCanvas(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6,_swigarg7))
-static PyObject *_wrap_new_wxGLCanvas(PyObject *self, PyObject *args) {
+static PyObject *_wrap_new_wxGLCanvas(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLCanvas * _result;
     wxWindow * _arg0;
     PyObject * _resultobj;
     wxGLCanvas * _result;
     wxWindow * _arg0;
@@ -8325,10 +8689,11 @@ static PyObject *_wrap_new_wxGLCanvas(PyObject *self, PyObject *args) {
     PyObject * _argo3 = 0;
     PyObject * _argo6 = 0;
     PyObject * _argo7 = 0;
     PyObject * _argo3 = 0;
     PyObject * _argo6 = 0;
     PyObject * _argo7 = 0;
+    char *_kwnames[] = { "parent","id","pos","size","style","name","attribList","palette", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O|iOOlsOO:new_wxGLCanvas",&_argo0,&_arg1,&_argo2,&_argo3,&_arg4,&_arg5,&_argo6,&_argo7)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|iOOlsOO:new_wxGLCanvas",_kwnames,&_argo0,&_arg1,&_argo2,&_argo3,&_arg4,&_arg5,&_argo6,&_argo7)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8381,13 +8746,14 @@ static PyObject *_wrap_new_wxGLCanvas(PyObject *self, PyObject *args) {
 }
 
 #define wxGLCanvas_SetCurrent(_swigobj)  (_swigobj->SetCurrent())
 }
 
 #define wxGLCanvas_SetCurrent(_swigobj)  (_swigobj->SetCurrent())
-static PyObject *_wrap_wxGLCanvas_SetCurrent(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGLCanvas_SetCurrent(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLCanvas * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     wxGLCanvas * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:wxGLCanvas_SetCurrent",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGLCanvas_SetCurrent",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8407,14 +8773,15 @@ static PyObject *_wrap_wxGLCanvas_SetCurrent(PyObject *self, PyObject *args) {
 }
 
 #define wxGLCanvas_SetColour(_swigobj,_swigarg0)  (_swigobj->SetColour(_swigarg0))
 }
 
 #define wxGLCanvas_SetColour(_swigobj,_swigarg0)  (_swigobj->SetColour(_swigarg0))
-static PyObject *_wrap_wxGLCanvas_SetColour(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGLCanvas_SetColour(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLCanvas * _arg0;
     char * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     wxGLCanvas * _arg0;
     char * _arg1;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","colour", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"Os:wxGLCanvas_SetColour",&_argo0,&_arg1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Os:wxGLCanvas_SetColour",_kwnames,&_argo0,&_arg1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8434,13 +8801,14 @@ static PyObject *_wrap_wxGLCanvas_SetColour(PyObject *self, PyObject *args) {
 }
 
 #define wxGLCanvas_SwapBuffers(_swigobj)  (_swigobj->SwapBuffers())
 }
 
 #define wxGLCanvas_SwapBuffers(_swigobj)  (_swigobj->SwapBuffers())
-static PyObject *_wrap_wxGLCanvas_SwapBuffers(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGLCanvas_SwapBuffers(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLCanvas * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     wxGLCanvas * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:wxGLCanvas_SwapBuffers",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGLCanvas_SwapBuffers",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8460,15 +8828,16 @@ static PyObject *_wrap_wxGLCanvas_SwapBuffers(PyObject *self, PyObject *args) {
 }
 
 #define wxGLCanvas_GetContext(_swigobj)  (_swigobj->GetContext())
 }
 
 #define wxGLCanvas_GetContext(_swigobj)  (_swigobj->GetContext())
-static PyObject *_wrap_wxGLCanvas_GetContext(PyObject *self, PyObject *args) {
+static PyObject *_wrap_wxGLCanvas_GetContext(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxGLContext * _result;
     wxGLCanvas * _arg0;
     PyObject * _argo0 = 0;
     PyObject * _resultobj;
     wxGLContext * _result;
     wxGLCanvas * _arg0;
     PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTuple(args,"O:wxGLCanvas_GetContext",&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGLCanvas_GetContext",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -8493,375 +8862,375 @@ static PyObject *_wrap_wxGLCanvas_GetContext(PyObject *self, PyObject *args) {
 }
 
 static PyMethodDef glcanvascMethods[] = {
 }
 
 static PyMethodDef glcanvascMethods[] = {
-        { "wxGLCanvas_GetContext", _wrap_wxGLCanvas_GetContext, METH_VARARGS },
-        { "wxGLCanvas_SwapBuffers", _wrap_wxGLCanvas_SwapBuffers, METH_VARARGS },
-        { "wxGLCanvas_SetColour", _wrap_wxGLCanvas_SetColour, METH_VARARGS },
-        { "wxGLCanvas_SetCurrent", _wrap_wxGLCanvas_SetCurrent, METH_VARARGS },
-        { "new_wxGLCanvas", _wrap_new_wxGLCanvas, METH_VARARGS },
-        { "wxGLContext_GetWindow", _wrap_wxGLContext_GetWindow, METH_VARARGS },
-        { "wxGLContext_SwapBuffers", _wrap_wxGLContext_SwapBuffers, METH_VARARGS },
-        { "wxGLContext_SetColour", _wrap_wxGLContext_SetColour, METH_VARARGS },
-        { "wxGLContext_SetCurrent", _wrap_wxGLContext_SetCurrent, METH_VARARGS },
-        { "delete_wxGLContext", _wrap_delete_wxGLContext, METH_VARARGS },
-        { "new_wxGLContext", _wrap_new_wxGLContext, METH_VARARGS },
-        { "glViewport", _wrap_glViewport, METH_VARARGS },
-        { "glVertexPointer", _wrap_glVertexPointer, METH_VARARGS },
-        { "glVertex4sv", _wrap_glVertex4sv, METH_VARARGS },
-        { "glVertex4s", _wrap_glVertex4s, METH_VARARGS },
-        { "glVertex4iv", _wrap_glVertex4iv, METH_VARARGS },
-        { "glVertex4i", _wrap_glVertex4i, METH_VARARGS },
-        { "glVertex4fv", _wrap_glVertex4fv, METH_VARARGS },
-        { "glVertex4f", _wrap_glVertex4f, METH_VARARGS },
-        { "glVertex4dv", _wrap_glVertex4dv, METH_VARARGS },
-        { "glVertex4d", _wrap_glVertex4d, METH_VARARGS },
-        { "glVertex3sv", _wrap_glVertex3sv, METH_VARARGS },
-        { "glVertex3s", _wrap_glVertex3s, METH_VARARGS },
-        { "glVertex3iv", _wrap_glVertex3iv, METH_VARARGS },
-        { "glVertex3i", _wrap_glVertex3i, METH_VARARGS },
-        { "glVertex3fv", _wrap_glVertex3fv, METH_VARARGS },
-        { "glVertex3f", _wrap_glVertex3f, METH_VARARGS },
-        { "glVertex3dv", _wrap_glVertex3dv, METH_VARARGS },
-        { "glVertex3d", _wrap_glVertex3d, METH_VARARGS },
-        { "glVertex2sv", _wrap_glVertex2sv, METH_VARARGS },
-        { "glVertex2s", _wrap_glVertex2s, METH_VARARGS },
-        { "glVertex2iv", _wrap_glVertex2iv, METH_VARARGS },
-        { "glVertex2i", _wrap_glVertex2i, METH_VARARGS },
-        { "glVertex2fv", _wrap_glVertex2fv, METH_VARARGS },
-        { "glVertex2f", _wrap_glVertex2f, METH_VARARGS },
-        { "glVertex2dv", _wrap_glVertex2dv, METH_VARARGS },
-        { "glVertex2d", _wrap_glVertex2d, METH_VARARGS },
-        { "glTranslatef", _wrap_glTranslatef, METH_VARARGS },
-        { "glTranslated", _wrap_glTranslated, METH_VARARGS },
-        { "glTexSubImage2D", _wrap_glTexSubImage2D, METH_VARARGS },
-        { "glTexSubImage1D", _wrap_glTexSubImage1D, METH_VARARGS },
-        { "glTexParameteriv", _wrap_glTexParameteriv, METH_VARARGS },
-        { "glTexParameteri", _wrap_glTexParameteri, METH_VARARGS },
-        { "glTexParameterfv", _wrap_glTexParameterfv, METH_VARARGS },
-        { "glTexParameterf", _wrap_glTexParameterf, METH_VARARGS },
-        { "glTexImage2D", _wrap_glTexImage2D, METH_VARARGS },
-        { "glTexImage1D", _wrap_glTexImage1D, METH_VARARGS },
-        { "glTexGeniv", _wrap_glTexGeniv, METH_VARARGS },
-        { "glTexGeni", _wrap_glTexGeni, METH_VARARGS },
-        { "glTexGenfv", _wrap_glTexGenfv, METH_VARARGS },
-        { "glTexGenf", _wrap_glTexGenf, METH_VARARGS },
-        { "glTexGendv", _wrap_glTexGendv, METH_VARARGS },
-        { "glTexGend", _wrap_glTexGend, METH_VARARGS },
-        { "glTexEnviv", _wrap_glTexEnviv, METH_VARARGS },
-        { "glTexEnvi", _wrap_glTexEnvi, METH_VARARGS },
-        { "glTexEnvfv", _wrap_glTexEnvfv, METH_VARARGS },
-        { "glTexEnvf", _wrap_glTexEnvf, METH_VARARGS },
-        { "glTexCoordPointer", _wrap_glTexCoordPointer, METH_VARARGS },
-        { "glTexCoord4sv", _wrap_glTexCoord4sv, METH_VARARGS },
-        { "glTexCoord4s", _wrap_glTexCoord4s, METH_VARARGS },
-        { "glTexCoord4iv", _wrap_glTexCoord4iv, METH_VARARGS },
-        { "glTexCoord4i", _wrap_glTexCoord4i, METH_VARARGS },
-        { "glTexCoord4fv", _wrap_glTexCoord4fv, METH_VARARGS },
-        { "glTexCoord4f", _wrap_glTexCoord4f, METH_VARARGS },
-        { "glTexCoord4dv", _wrap_glTexCoord4dv, METH_VARARGS },
-        { "glTexCoord4d", _wrap_glTexCoord4d, METH_VARARGS },
-        { "glTexCoord3sv", _wrap_glTexCoord3sv, METH_VARARGS },
-        { "glTexCoord3s", _wrap_glTexCoord3s, METH_VARARGS },
-        { "glTexCoord3iv", _wrap_glTexCoord3iv, METH_VARARGS },
-        { "glTexCoord3i", _wrap_glTexCoord3i, METH_VARARGS },
-        { "glTexCoord3fv", _wrap_glTexCoord3fv, METH_VARARGS },
-        { "glTexCoord3f", _wrap_glTexCoord3f, METH_VARARGS },
-        { "glTexCoord3dv", _wrap_glTexCoord3dv, METH_VARARGS },
-        { "glTexCoord3d", _wrap_glTexCoord3d, METH_VARARGS },
-        { "glTexCoord2sv", _wrap_glTexCoord2sv, METH_VARARGS },
-        { "glTexCoord2s", _wrap_glTexCoord2s, METH_VARARGS },
-        { "glTexCoord2iv", _wrap_glTexCoord2iv, METH_VARARGS },
-        { "glTexCoord2i", _wrap_glTexCoord2i, METH_VARARGS },
-        { "glTexCoord2fv", _wrap_glTexCoord2fv, METH_VARARGS },
-        { "glTexCoord2f", _wrap_glTexCoord2f, METH_VARARGS },
-        { "glTexCoord2dv", _wrap_glTexCoord2dv, METH_VARARGS },
-        { "glTexCoord2d", _wrap_glTexCoord2d, METH_VARARGS },
-        { "glTexCoord1sv", _wrap_glTexCoord1sv, METH_VARARGS },
-        { "glTexCoord1s", _wrap_glTexCoord1s, METH_VARARGS },
-        { "glTexCoord1iv", _wrap_glTexCoord1iv, METH_VARARGS },
-        { "glTexCoord1i", _wrap_glTexCoord1i, METH_VARARGS },
-        { "glTexCoord1fv", _wrap_glTexCoord1fv, METH_VARARGS },
-        { "glTexCoord1f", _wrap_glTexCoord1f, METH_VARARGS },
-        { "glTexCoord1dv", _wrap_glTexCoord1dv, METH_VARARGS },
-        { "glTexCoord1d", _wrap_glTexCoord1d, METH_VARARGS },
-        { "glStencilOp", _wrap_glStencilOp, METH_VARARGS },
-        { "glStencilMask", _wrap_glStencilMask, METH_VARARGS },
-        { "glStencilFunc", _wrap_glStencilFunc, METH_VARARGS },
-        { "glShadeModel", _wrap_glShadeModel, METH_VARARGS },
-        { "glSelectBuffer", _wrap_glSelectBuffer, METH_VARARGS },
-        { "glScissor", _wrap_glScissor, METH_VARARGS },
-        { "glScalef", _wrap_glScalef, METH_VARARGS },
-        { "glScaled", _wrap_glScaled, METH_VARARGS },
-        { "glRotatef", _wrap_glRotatef, METH_VARARGS },
-        { "glRotated", _wrap_glRotated, METH_VARARGS },
-        { "glRenderMode", _wrap_glRenderMode, METH_VARARGS },
-        { "glRectsv", _wrap_glRectsv, METH_VARARGS },
-        { "glRects", _wrap_glRects, METH_VARARGS },
-        { "glRectiv", _wrap_glRectiv, METH_VARARGS },
-        { "glRecti", _wrap_glRecti, METH_VARARGS },
-        { "glRectfv", _wrap_glRectfv, METH_VARARGS },
-        { "glRectf", _wrap_glRectf, METH_VARARGS },
-        { "glRectdv", _wrap_glRectdv, METH_VARARGS },
-        { "glRectd", _wrap_glRectd, METH_VARARGS },
-        { "glReadPixels", _wrap_glReadPixels, METH_VARARGS },
-        { "glReadBuffer", _wrap_glReadBuffer, METH_VARARGS },
-        { "glRasterPos4sv", _wrap_glRasterPos4sv, METH_VARARGS },
-        { "glRasterPos4s", _wrap_glRasterPos4s, METH_VARARGS },
-        { "glRasterPos4iv", _wrap_glRasterPos4iv, METH_VARARGS },
-        { "glRasterPos4i", _wrap_glRasterPos4i, METH_VARARGS },
-        { "glRasterPos4fv", _wrap_glRasterPos4fv, METH_VARARGS },
-        { "glRasterPos4f", _wrap_glRasterPos4f, METH_VARARGS },
-        { "glRasterPos4dv", _wrap_glRasterPos4dv, METH_VARARGS },
-        { "glRasterPos4d", _wrap_glRasterPos4d, METH_VARARGS },
-        { "glRasterPos3sv", _wrap_glRasterPos3sv, METH_VARARGS },
-        { "glRasterPos3s", _wrap_glRasterPos3s, METH_VARARGS },
-        { "glRasterPos3iv", _wrap_glRasterPos3iv, METH_VARARGS },
-        { "glRasterPos3i", _wrap_glRasterPos3i, METH_VARARGS },
-        { "glRasterPos3fv", _wrap_glRasterPos3fv, METH_VARARGS },
-        { "glRasterPos3f", _wrap_glRasterPos3f, METH_VARARGS },
-        { "glRasterPos3dv", _wrap_glRasterPos3dv, METH_VARARGS },
-        { "glRasterPos3d", _wrap_glRasterPos3d, METH_VARARGS },
-        { "glRasterPos2sv", _wrap_glRasterPos2sv, METH_VARARGS },
-        { "glRasterPos2s", _wrap_glRasterPos2s, METH_VARARGS },
-        { "glRasterPos2iv", _wrap_glRasterPos2iv, METH_VARARGS },
-        { "glRasterPos2i", _wrap_glRasterPos2i, METH_VARARGS },
-        { "glRasterPos2fv", _wrap_glRasterPos2fv, METH_VARARGS },
-        { "glRasterPos2f", _wrap_glRasterPos2f, METH_VARARGS },
-        { "glRasterPos2dv", _wrap_glRasterPos2dv, METH_VARARGS },
-        { "glRasterPos2d", _wrap_glRasterPos2d, METH_VARARGS },
-        { "glPushName", _wrap_glPushName, METH_VARARGS },
-        { "glPushMatrix", _wrap_glPushMatrix, METH_VARARGS },
-        { "glPushClientAttrib", _wrap_glPushClientAttrib, METH_VARARGS },
-        { "glPushAttrib", _wrap_glPushAttrib, METH_VARARGS },
-        { "glPrioritizeTextures", _wrap_glPrioritizeTextures, METH_VARARGS },
-        { "glPopName", _wrap_glPopName, METH_VARARGS },
-        { "glPopMatrix", _wrap_glPopMatrix, METH_VARARGS },
-        { "glPopClientAttrib", _wrap_glPopClientAttrib, METH_VARARGS },
-        { "glPopAttrib", _wrap_glPopAttrib, METH_VARARGS },
-        { "glPolygonStipple", _wrap_glPolygonStipple, METH_VARARGS },
-        { "glPolygonOffset", _wrap_glPolygonOffset, METH_VARARGS },
-        { "glPolygonMode", _wrap_glPolygonMode, METH_VARARGS },
-        { "glPointSize", _wrap_glPointSize, METH_VARARGS },
-        { "glPixelZoom", _wrap_glPixelZoom, METH_VARARGS },
-        { "glPixelTransferi", _wrap_glPixelTransferi, METH_VARARGS },
-        { "glPixelTransferf", _wrap_glPixelTransferf, METH_VARARGS },
-        { "glPixelStorei", _wrap_glPixelStorei, METH_VARARGS },
-        { "glPixelStoref", _wrap_glPixelStoref, METH_VARARGS },
-        { "glPixelMapusv", _wrap_glPixelMapusv, METH_VARARGS },
-        { "glPixelMapuiv", _wrap_glPixelMapuiv, METH_VARARGS },
-        { "glPixelMapfv", _wrap_glPixelMapfv, METH_VARARGS },
-        { "glPassThrough", _wrap_glPassThrough, METH_VARARGS },
-        { "glOrtho", _wrap_glOrtho, METH_VARARGS },
-        { "glNormalPointer", _wrap_glNormalPointer, METH_VARARGS },
-        { "glNormal3sv", _wrap_glNormal3sv, METH_VARARGS },
-        { "glNormal3s", _wrap_glNormal3s, METH_VARARGS },
-        { "glNormal3iv", _wrap_glNormal3iv, METH_VARARGS },
-        { "glNormal3i", _wrap_glNormal3i, METH_VARARGS },
-        { "glNormal3fv", _wrap_glNormal3fv, METH_VARARGS },
-        { "glNormal3f", _wrap_glNormal3f, METH_VARARGS },
-        { "glNormal3dv", _wrap_glNormal3dv, METH_VARARGS },
-        { "glNormal3d", _wrap_glNormal3d, METH_VARARGS },
-        { "glNormal3bv", _wrap_glNormal3bv, METH_VARARGS },
-        { "glNormal3b", _wrap_glNormal3b, METH_VARARGS },
-        { "glNewList", _wrap_glNewList, METH_VARARGS },
-        { "glMultMatrixf", _wrap_glMultMatrixf, METH_VARARGS },
-        { "glMultMatrixd", _wrap_glMultMatrixd, METH_VARARGS },
-        { "glMatrixMode", _wrap_glMatrixMode, METH_VARARGS },
-        { "glMaterialiv", _wrap_glMaterialiv, METH_VARARGS },
-        { "glMateriali", _wrap_glMateriali, METH_VARARGS },
-        { "glMaterialfv", _wrap_glMaterialfv, METH_VARARGS },
-        { "glMaterialf", _wrap_glMaterialf, METH_VARARGS },
-        { "glMapGrid2f", _wrap_glMapGrid2f, METH_VARARGS },
-        { "glMapGrid2d", _wrap_glMapGrid2d, METH_VARARGS },
-        { "glMapGrid1f", _wrap_glMapGrid1f, METH_VARARGS },
-        { "glMapGrid1d", _wrap_glMapGrid1d, METH_VARARGS },
-        { "glMap2f", _wrap_glMap2f, METH_VARARGS },
-        { "glMap2d", _wrap_glMap2d, METH_VARARGS },
-        { "glMap1f", _wrap_glMap1f, METH_VARARGS },
-        { "glMap1d", _wrap_glMap1d, METH_VARARGS },
-        { "glLogicOp", _wrap_glLogicOp, METH_VARARGS },
-        { "glLoadName", _wrap_glLoadName, METH_VARARGS },
-        { "glLoadMatrixf", _wrap_glLoadMatrixf, METH_VARARGS },
-        { "glLoadMatrixd", _wrap_glLoadMatrixd, METH_VARARGS },
-        { "glLoadIdentity", _wrap_glLoadIdentity, METH_VARARGS },
-        { "glListBase", _wrap_glListBase, METH_VARARGS },
-        { "glLineWidth", _wrap_glLineWidth, METH_VARARGS },
-        { "glLineStipple", _wrap_glLineStipple, METH_VARARGS },
-        { "glLightiv", _wrap_glLightiv, METH_VARARGS },
-        { "glLighti", _wrap_glLighti, METH_VARARGS },
-        { "glLightfv", _wrap_glLightfv, METH_VARARGS },
-        { "glLightf", _wrap_glLightf, METH_VARARGS },
-        { "glLightModeliv", _wrap_glLightModeliv, METH_VARARGS },
-        { "glLightModeli", _wrap_glLightModeli, METH_VARARGS },
-        { "glLightModelfv", _wrap_glLightModelfv, METH_VARARGS },
-        { "glLightModelf", _wrap_glLightModelf, METH_VARARGS },
-        { "glIsTexture", _wrap_glIsTexture, METH_VARARGS },
-        { "glIsList", _wrap_glIsList, METH_VARARGS },
-        { "glIsEnabled", _wrap_glIsEnabled, METH_VARARGS },
-        { "glInterleavedArrays", _wrap_glInterleavedArrays, METH_VARARGS },
-        { "glInitNames", _wrap_glInitNames, METH_VARARGS },
-        { "glIndexubv", _wrap_glIndexubv, METH_VARARGS },
-        { "glIndexub", _wrap_glIndexub, METH_VARARGS },
-        { "glIndexsv", _wrap_glIndexsv, METH_VARARGS },
-        { "glIndexs", _wrap_glIndexs, METH_VARARGS },
-        { "glIndexiv", _wrap_glIndexiv, METH_VARARGS },
-        { "glIndexi", _wrap_glIndexi, METH_VARARGS },
-        { "glIndexfv", _wrap_glIndexfv, METH_VARARGS },
-        { "glIndexf", _wrap_glIndexf, METH_VARARGS },
-        { "glIndexdv", _wrap_glIndexdv, METH_VARARGS },
-        { "glIndexd", _wrap_glIndexd, METH_VARARGS },
-        { "glIndexPointer", _wrap_glIndexPointer, METH_VARARGS },
-        { "glIndexMask", _wrap_glIndexMask, METH_VARARGS },
-        { "glHint", _wrap_glHint, METH_VARARGS },
-        { "glGetTexParameteriv", _wrap_glGetTexParameteriv, METH_VARARGS },
-        { "glGetTexParameterfv", _wrap_glGetTexParameterfv, METH_VARARGS },
-        { "glGetTexLevelParameteriv", _wrap_glGetTexLevelParameteriv, METH_VARARGS },
-        { "glGetTexLevelParameterfv", _wrap_glGetTexLevelParameterfv, METH_VARARGS },
-        { "glGetTexImage", _wrap_glGetTexImage, METH_VARARGS },
-        { "glGetTexGeniv", _wrap_glGetTexGeniv, METH_VARARGS },
-        { "glGetTexGenfv", _wrap_glGetTexGenfv, METH_VARARGS },
-        { "glGetTexGendv", _wrap_glGetTexGendv, METH_VARARGS },
-        { "glGetTexEnviv", _wrap_glGetTexEnviv, METH_VARARGS },
-        { "glGetTexEnvfv", _wrap_glGetTexEnvfv, METH_VARARGS },
-        { "glGetString", _wrap_glGetString, METH_VARARGS },
-        { "glGetPolygonStipple", _wrap_glGetPolygonStipple, METH_VARARGS },
-        { "glGetPointerv", _wrap_glGetPointerv, METH_VARARGS },
-        { "glGetPixelMapusv", _wrap_glGetPixelMapusv, METH_VARARGS },
-        { "glGetPixelMapuiv", _wrap_glGetPixelMapuiv, METH_VARARGS },
-        { "glGetPixelMapfv", _wrap_glGetPixelMapfv, METH_VARARGS },
-        { "glGetMaterialiv", _wrap_glGetMaterialiv, METH_VARARGS },
-        { "glGetMaterialfv", _wrap_glGetMaterialfv, METH_VARARGS },
-        { "glGetMapiv", _wrap_glGetMapiv, METH_VARARGS },
-        { "glGetMapfv", _wrap_glGetMapfv, METH_VARARGS },
-        { "glGetMapdv", _wrap_glGetMapdv, METH_VARARGS },
-        { "glGetLightiv", _wrap_glGetLightiv, METH_VARARGS },
-        { "glGetLightfv", _wrap_glGetLightfv, METH_VARARGS },
-        { "glGetIntegerv", _wrap_glGetIntegerv, METH_VARARGS },
-        { "glGetFloatv", _wrap_glGetFloatv, METH_VARARGS },
-        { "glGetError", _wrap_glGetError, METH_VARARGS },
-        { "glGetDoublev", _wrap_glGetDoublev, METH_VARARGS },
-        { "glGetClipPlane", _wrap_glGetClipPlane, METH_VARARGS },
-        { "glGetBooleanv", _wrap_glGetBooleanv, METH_VARARGS },
-        { "glGenTextures", _wrap_glGenTextures, METH_VARARGS },
-        { "glGenLists", _wrap_glGenLists, METH_VARARGS },
-        { "glFrustum", _wrap_glFrustum, METH_VARARGS },
-        { "glFrontFace", _wrap_glFrontFace, METH_VARARGS },
-        { "glFogiv", _wrap_glFogiv, METH_VARARGS },
-        { "glFogi", _wrap_glFogi, METH_VARARGS },
-        { "glFogfv", _wrap_glFogfv, METH_VARARGS },
-        { "glFogf", _wrap_glFogf, METH_VARARGS },
-        { "glFlush", _wrap_glFlush, METH_VARARGS },
-        { "glFinish", _wrap_glFinish, METH_VARARGS },
-        { "glFeedbackBuffer", _wrap_glFeedbackBuffer, METH_VARARGS },
-        { "glEvalPoint2", _wrap_glEvalPoint2, METH_VARARGS },
-        { "glEvalPoint1", _wrap_glEvalPoint1, METH_VARARGS },
-        { "glEvalMesh2", _wrap_glEvalMesh2, METH_VARARGS },
-        { "glEvalMesh1", _wrap_glEvalMesh1, METH_VARARGS },
-        { "glEvalCoord2fv", _wrap_glEvalCoord2fv, METH_VARARGS },
-        { "glEvalCoord2f", _wrap_glEvalCoord2f, METH_VARARGS },
-        { "glEvalCoord2dv", _wrap_glEvalCoord2dv, METH_VARARGS },
-        { "glEvalCoord2d", _wrap_glEvalCoord2d, METH_VARARGS },
-        { "glEvalCoord1fv", _wrap_glEvalCoord1fv, METH_VARARGS },
-        { "glEvalCoord1f", _wrap_glEvalCoord1f, METH_VARARGS },
-        { "glEvalCoord1dv", _wrap_glEvalCoord1dv, METH_VARARGS },
-        { "glEvalCoord1d", _wrap_glEvalCoord1d, METH_VARARGS },
-        { "glEndList", _wrap_glEndList, METH_VARARGS },
-        { "glEnd", _wrap_glEnd, METH_VARARGS },
-        { "glEnableClientState", _wrap_glEnableClientState, METH_VARARGS },
-        { "glEnable", _wrap_glEnable, METH_VARARGS },
-        { "glEdgeFlagv", _wrap_glEdgeFlagv, METH_VARARGS },
-        { "glEdgeFlagPointer", _wrap_glEdgeFlagPointer, METH_VARARGS },
-        { "glEdgeFlag", _wrap_glEdgeFlag, METH_VARARGS },
-        { "glDrawPixels", _wrap_glDrawPixels, METH_VARARGS },
-        { "glDrawElements", _wrap_glDrawElements, METH_VARARGS },
-        { "glDrawBuffer", _wrap_glDrawBuffer, METH_VARARGS },
-        { "glDrawArrays", _wrap_glDrawArrays, METH_VARARGS },
-        { "glDisableClientState", _wrap_glDisableClientState, METH_VARARGS },
-        { "glDisable", _wrap_glDisable, METH_VARARGS },
-        { "glDepthRange", _wrap_glDepthRange, METH_VARARGS },
-        { "glDepthMask", _wrap_glDepthMask, METH_VARARGS },
-        { "glDepthFunc", _wrap_glDepthFunc, METH_VARARGS },
-        { "glDeleteTextures", _wrap_glDeleteTextures, METH_VARARGS },
-        { "glDeleteLists", _wrap_glDeleteLists, METH_VARARGS },
-        { "glCullFace", _wrap_glCullFace, METH_VARARGS },
-        { "glCopyTexSubImage2D", _wrap_glCopyTexSubImage2D, METH_VARARGS },
-        { "glCopyTexSubImage1D", _wrap_glCopyTexSubImage1D, METH_VARARGS },
-        { "glCopyTexImage2D", _wrap_glCopyTexImage2D, METH_VARARGS },
-        { "glCopyTexImage1D", _wrap_glCopyTexImage1D, METH_VARARGS },
-        { "glCopyPixels", _wrap_glCopyPixels, METH_VARARGS },
-        { "glColorPointer", _wrap_glColorPointer, METH_VARARGS },
-        { "glColorMaterial", _wrap_glColorMaterial, METH_VARARGS },
-        { "glColorMask", _wrap_glColorMask, METH_VARARGS },
-        { "glColor4usv", _wrap_glColor4usv, METH_VARARGS },
-        { "glColor4us", _wrap_glColor4us, METH_VARARGS },
-        { "glColor4uiv", _wrap_glColor4uiv, METH_VARARGS },
-        { "glColor4ui", _wrap_glColor4ui, METH_VARARGS },
-        { "glColor4ubv", _wrap_glColor4ubv, METH_VARARGS },
-        { "glColor4ub", _wrap_glColor4ub, METH_VARARGS },
-        { "glColor4sv", _wrap_glColor4sv, METH_VARARGS },
-        { "glColor4s", _wrap_glColor4s, METH_VARARGS },
-        { "glColor4iv", _wrap_glColor4iv, METH_VARARGS },
-        { "glColor4i", _wrap_glColor4i, METH_VARARGS },
-        { "glColor4fv", _wrap_glColor4fv, METH_VARARGS },
-        { "glColor4f", _wrap_glColor4f, METH_VARARGS },
-        { "glColor4dv", _wrap_glColor4dv, METH_VARARGS },
-        { "glColor4d", _wrap_glColor4d, METH_VARARGS },
-        { "glColor4bv", _wrap_glColor4bv, METH_VARARGS },
-        { "glColor4b", _wrap_glColor4b, METH_VARARGS },
-        { "glColor3usv", _wrap_glColor3usv, METH_VARARGS },
-        { "glColor3us", _wrap_glColor3us, METH_VARARGS },
-        { "glColor3uiv", _wrap_glColor3uiv, METH_VARARGS },
-        { "glColor3ui", _wrap_glColor3ui, METH_VARARGS },
-        { "glColor3ubv", _wrap_glColor3ubv, METH_VARARGS },
-        { "glColor3ub", _wrap_glColor3ub, METH_VARARGS },
-        { "glColor3sv", _wrap_glColor3sv, METH_VARARGS },
-        { "glColor3s", _wrap_glColor3s, METH_VARARGS },
-        { "glColor3iv", _wrap_glColor3iv, METH_VARARGS },
-        { "glColor3i", _wrap_glColor3i, METH_VARARGS },
-        { "glColor3fv", _wrap_glColor3fv, METH_VARARGS },
-        { "glColor3f", _wrap_glColor3f, METH_VARARGS },
-        { "glColor3dv", _wrap_glColor3dv, METH_VARARGS },
-        { "glColor3d", _wrap_glColor3d, METH_VARARGS },
-        { "glColor3bv", _wrap_glColor3bv, METH_VARARGS },
-        { "glColor3b", _wrap_glColor3b, METH_VARARGS },
-        { "glClipPlane", _wrap_glClipPlane, METH_VARARGS },
-        { "glClearStencil", _wrap_glClearStencil, METH_VARARGS },
-        { "glClearIndex", _wrap_glClearIndex, METH_VARARGS },
-        { "glClearDepth", _wrap_glClearDepth, METH_VARARGS },
-        { "glClearColor", _wrap_glClearColor, METH_VARARGS },
-        { "glClearAccum", _wrap_glClearAccum, METH_VARARGS },
-        { "glClear", _wrap_glClear, METH_VARARGS },
-        { "glCallLists", _wrap_glCallLists, METH_VARARGS },
-        { "glCallList", _wrap_glCallList, METH_VARARGS },
-        { "glBlendFunc", _wrap_glBlendFunc, METH_VARARGS },
-        { "glBitmap", _wrap_glBitmap, METH_VARARGS },
-        { "glBindTexture", _wrap_glBindTexture, METH_VARARGS },
-        { "glBegin", _wrap_glBegin, METH_VARARGS },
-        { "glArrayElement", _wrap_glArrayElement, METH_VARARGS },
-        { "glAreTexturesResident", _wrap_glAreTexturesResident, METH_VARARGS },
-        { "glAlphaFunc", _wrap_glAlphaFunc, METH_VARARGS },
-        { "glAccum", _wrap_glAccum, METH_VARARGS },
-        { "glAddSwapHintRectWin", _wrap_glAddSwapHintRectWin, METH_VARARGS },
-        { "glIndexMaterialSGI", _wrap_glIndexMaterialSGI, METH_VARARGS },
-        { "glIndexFuncSGI", _wrap_glIndexFuncSGI, METH_VARARGS },
-        { "glCullParameterfvSGI", _wrap_glCullParameterfvSGI, METH_VARARGS },
-        { "glCullParameterdvSGI", _wrap_glCullParameterdvSGI, METH_VARARGS },
-        { "glUnlockArraysSGI", _wrap_glUnlockArraysSGI, METH_VARARGS },
-        { "glLockArraysSGI", _wrap_glLockArraysSGI, METH_VARARGS },
-        { "glGetColorTavleParameterivEXT", _wrap_glGetColorTavleParameterivEXT, METH_VARARGS },
-        { "glGetColorTableParamaterfvEXT", _wrap_glGetColorTableParamaterfvEXT, METH_VARARGS },
-        { "glGetColorTableEXT", _wrap_glGetColorTableEXT, METH_VARARGS },
-        { "glCopyColorTableEXT", _wrap_glCopyColorTableEXT, METH_VARARGS },
-        { "glColorTableEXT", _wrap_glColorTableEXT, METH_VARARGS },
-        { "glColorSubtableEXT", _wrap_glColorSubtableEXT, METH_VARARGS },
-        { "glVertexPointerEXT", _wrap_glVertexPointerEXT, METH_VARARGS },
-        { "glTexCoordPointerEXT", _wrap_glTexCoordPointerEXT, METH_VARARGS },
-        { "glNormalPointerEXT", _wrap_glNormalPointerEXT, METH_VARARGS },
-        { "glIndexPointerEXT", _wrap_glIndexPointerEXT, METH_VARARGS },
-        { "glGetPointervEXT", _wrap_glGetPointervEXT, METH_VARARGS },
-        { "glEdgeFlagPointerEXT", _wrap_glEdgeFlagPointerEXT, METH_VARARGS },
-        { "glDrawArraysEXT", _wrap_glDrawArraysEXT, METH_VARARGS },
-        { "glColorPointerEXT", _wrap_glColorPointerEXT, METH_VARARGS },
-        { "glArrayElementEXT", _wrap_glArrayElementEXT, METH_VARARGS },
+        { "wxGLCanvas_GetContext", (PyCFunction) _wrap_wxGLCanvas_GetContext, METH_VARARGS | METH_KEYWORDS },
+        { "wxGLCanvas_SwapBuffers", (PyCFunction) _wrap_wxGLCanvas_SwapBuffers, METH_VARARGS | METH_KEYWORDS },
+        { "wxGLCanvas_SetColour", (PyCFunction) _wrap_wxGLCanvas_SetColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGLCanvas_SetCurrent", (PyCFunction) _wrap_wxGLCanvas_SetCurrent, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxGLCanvas", (PyCFunction) _wrap_new_wxGLCanvas, METH_VARARGS | METH_KEYWORDS },
+        { "wxGLContext_GetWindow", (PyCFunction) _wrap_wxGLContext_GetWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxGLContext_SwapBuffers", (PyCFunction) _wrap_wxGLContext_SwapBuffers, METH_VARARGS | METH_KEYWORDS },
+        { "wxGLContext_SetColour", (PyCFunction) _wrap_wxGLContext_SetColour, METH_VARARGS | METH_KEYWORDS },
+        { "wxGLContext_SetCurrent", (PyCFunction) _wrap_wxGLContext_SetCurrent, METH_VARARGS | METH_KEYWORDS },
+        { "delete_wxGLContext", (PyCFunction) _wrap_delete_wxGLContext, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxGLContext", (PyCFunction) _wrap_new_wxGLContext, METH_VARARGS | METH_KEYWORDS },
+        { "glViewport", (PyCFunction) _wrap_glViewport, METH_VARARGS | METH_KEYWORDS },
+        { "glVertexPointer", (PyCFunction) _wrap_glVertexPointer, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex4sv", (PyCFunction) _wrap_glVertex4sv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex4s", (PyCFunction) _wrap_glVertex4s, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex4iv", (PyCFunction) _wrap_glVertex4iv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex4i", (PyCFunction) _wrap_glVertex4i, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex4fv", (PyCFunction) _wrap_glVertex4fv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex4f", (PyCFunction) _wrap_glVertex4f, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex4dv", (PyCFunction) _wrap_glVertex4dv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex4d", (PyCFunction) _wrap_glVertex4d, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex3sv", (PyCFunction) _wrap_glVertex3sv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex3s", (PyCFunction) _wrap_glVertex3s, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex3iv", (PyCFunction) _wrap_glVertex3iv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex3i", (PyCFunction) _wrap_glVertex3i, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex3fv", (PyCFunction) _wrap_glVertex3fv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex3f", (PyCFunction) _wrap_glVertex3f, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex3dv", (PyCFunction) _wrap_glVertex3dv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex3d", (PyCFunction) _wrap_glVertex3d, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex2sv", (PyCFunction) _wrap_glVertex2sv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex2s", (PyCFunction) _wrap_glVertex2s, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex2iv", (PyCFunction) _wrap_glVertex2iv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex2i", (PyCFunction) _wrap_glVertex2i, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex2fv", (PyCFunction) _wrap_glVertex2fv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex2f", (PyCFunction) _wrap_glVertex2f, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex2dv", (PyCFunction) _wrap_glVertex2dv, METH_VARARGS | METH_KEYWORDS },
+        { "glVertex2d", (PyCFunction) _wrap_glVertex2d, METH_VARARGS | METH_KEYWORDS },
+        { "glTranslatef", (PyCFunction) _wrap_glTranslatef, METH_VARARGS | METH_KEYWORDS },
+        { "glTranslated", (PyCFunction) _wrap_glTranslated, METH_VARARGS | METH_KEYWORDS },
+        { "glTexSubImage2D", (PyCFunction) _wrap_glTexSubImage2D, METH_VARARGS | METH_KEYWORDS },
+        { "glTexSubImage1D", (PyCFunction) _wrap_glTexSubImage1D, METH_VARARGS | METH_KEYWORDS },
+        { "glTexParameteriv", (PyCFunction) _wrap_glTexParameteriv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexParameteri", (PyCFunction) _wrap_glTexParameteri, METH_VARARGS | METH_KEYWORDS },
+        { "glTexParameterfv", (PyCFunction) _wrap_glTexParameterfv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexParameterf", (PyCFunction) _wrap_glTexParameterf, METH_VARARGS | METH_KEYWORDS },
+        { "glTexImage2D", (PyCFunction) _wrap_glTexImage2D, METH_VARARGS | METH_KEYWORDS },
+        { "glTexImage1D", (PyCFunction) _wrap_glTexImage1D, METH_VARARGS | METH_KEYWORDS },
+        { "glTexGeniv", (PyCFunction) _wrap_glTexGeniv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexGeni", (PyCFunction) _wrap_glTexGeni, METH_VARARGS | METH_KEYWORDS },
+        { "glTexGenfv", (PyCFunction) _wrap_glTexGenfv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexGenf", (PyCFunction) _wrap_glTexGenf, METH_VARARGS | METH_KEYWORDS },
+        { "glTexGendv", (PyCFunction) _wrap_glTexGendv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexGend", (PyCFunction) _wrap_glTexGend, METH_VARARGS | METH_KEYWORDS },
+        { "glTexEnviv", (PyCFunction) _wrap_glTexEnviv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexEnvi", (PyCFunction) _wrap_glTexEnvi, METH_VARARGS | METH_KEYWORDS },
+        { "glTexEnvfv", (PyCFunction) _wrap_glTexEnvfv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexEnvf", (PyCFunction) _wrap_glTexEnvf, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoordPointer", (PyCFunction) _wrap_glTexCoordPointer, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord4sv", (PyCFunction) _wrap_glTexCoord4sv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord4s", (PyCFunction) _wrap_glTexCoord4s, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord4iv", (PyCFunction) _wrap_glTexCoord4iv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord4i", (PyCFunction) _wrap_glTexCoord4i, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord4fv", (PyCFunction) _wrap_glTexCoord4fv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord4f", (PyCFunction) _wrap_glTexCoord4f, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord4dv", (PyCFunction) _wrap_glTexCoord4dv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord4d", (PyCFunction) _wrap_glTexCoord4d, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord3sv", (PyCFunction) _wrap_glTexCoord3sv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord3s", (PyCFunction) _wrap_glTexCoord3s, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord3iv", (PyCFunction) _wrap_glTexCoord3iv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord3i", (PyCFunction) _wrap_glTexCoord3i, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord3fv", (PyCFunction) _wrap_glTexCoord3fv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord3f", (PyCFunction) _wrap_glTexCoord3f, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord3dv", (PyCFunction) _wrap_glTexCoord3dv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord3d", (PyCFunction) _wrap_glTexCoord3d, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord2sv", (PyCFunction) _wrap_glTexCoord2sv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord2s", (PyCFunction) _wrap_glTexCoord2s, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord2iv", (PyCFunction) _wrap_glTexCoord2iv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord2i", (PyCFunction) _wrap_glTexCoord2i, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord2fv", (PyCFunction) _wrap_glTexCoord2fv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord2f", (PyCFunction) _wrap_glTexCoord2f, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord2dv", (PyCFunction) _wrap_glTexCoord2dv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord2d", (PyCFunction) _wrap_glTexCoord2d, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord1sv", (PyCFunction) _wrap_glTexCoord1sv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord1s", (PyCFunction) _wrap_glTexCoord1s, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord1iv", (PyCFunction) _wrap_glTexCoord1iv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord1i", (PyCFunction) _wrap_glTexCoord1i, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord1fv", (PyCFunction) _wrap_glTexCoord1fv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord1f", (PyCFunction) _wrap_glTexCoord1f, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord1dv", (PyCFunction) _wrap_glTexCoord1dv, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoord1d", (PyCFunction) _wrap_glTexCoord1d, METH_VARARGS | METH_KEYWORDS },
+        { "glStencilOp", (PyCFunction) _wrap_glStencilOp, METH_VARARGS | METH_KEYWORDS },
+        { "glStencilMask", (PyCFunction) _wrap_glStencilMask, METH_VARARGS | METH_KEYWORDS },
+        { "glStencilFunc", (PyCFunction) _wrap_glStencilFunc, METH_VARARGS | METH_KEYWORDS },
+        { "glShadeModel", (PyCFunction) _wrap_glShadeModel, METH_VARARGS | METH_KEYWORDS },
+        { "glSelectBuffer", (PyCFunction) _wrap_glSelectBuffer, METH_VARARGS | METH_KEYWORDS },
+        { "glScissor", (PyCFunction) _wrap_glScissor, METH_VARARGS | METH_KEYWORDS },
+        { "glScalef", (PyCFunction) _wrap_glScalef, METH_VARARGS | METH_KEYWORDS },
+        { "glScaled", (PyCFunction) _wrap_glScaled, METH_VARARGS | METH_KEYWORDS },
+        { "glRotatef", (PyCFunction) _wrap_glRotatef, METH_VARARGS | METH_KEYWORDS },
+        { "glRotated", (PyCFunction) _wrap_glRotated, METH_VARARGS | METH_KEYWORDS },
+        { "glRenderMode", (PyCFunction) _wrap_glRenderMode, METH_VARARGS | METH_KEYWORDS },
+        { "glRectsv", (PyCFunction) _wrap_glRectsv, METH_VARARGS | METH_KEYWORDS },
+        { "glRects", (PyCFunction) _wrap_glRects, METH_VARARGS | METH_KEYWORDS },
+        { "glRectiv", (PyCFunction) _wrap_glRectiv, METH_VARARGS | METH_KEYWORDS },
+        { "glRecti", (PyCFunction) _wrap_glRecti, METH_VARARGS | METH_KEYWORDS },
+        { "glRectfv", (PyCFunction) _wrap_glRectfv, METH_VARARGS | METH_KEYWORDS },
+        { "glRectf", (PyCFunction) _wrap_glRectf, METH_VARARGS | METH_KEYWORDS },
+        { "glRectdv", (PyCFunction) _wrap_glRectdv, METH_VARARGS | METH_KEYWORDS },
+        { "glRectd", (PyCFunction) _wrap_glRectd, METH_VARARGS | METH_KEYWORDS },
+        { "glReadPixels", (PyCFunction) _wrap_glReadPixels, METH_VARARGS | METH_KEYWORDS },
+        { "glReadBuffer", (PyCFunction) _wrap_glReadBuffer, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos4sv", (PyCFunction) _wrap_glRasterPos4sv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos4s", (PyCFunction) _wrap_glRasterPos4s, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos4iv", (PyCFunction) _wrap_glRasterPos4iv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos4i", (PyCFunction) _wrap_glRasterPos4i, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos4fv", (PyCFunction) _wrap_glRasterPos4fv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos4f", (PyCFunction) _wrap_glRasterPos4f, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos4dv", (PyCFunction) _wrap_glRasterPos4dv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos4d", (PyCFunction) _wrap_glRasterPos4d, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos3sv", (PyCFunction) _wrap_glRasterPos3sv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos3s", (PyCFunction) _wrap_glRasterPos3s, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos3iv", (PyCFunction) _wrap_glRasterPos3iv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos3i", (PyCFunction) _wrap_glRasterPos3i, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos3fv", (PyCFunction) _wrap_glRasterPos3fv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos3f", (PyCFunction) _wrap_glRasterPos3f, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos3dv", (PyCFunction) _wrap_glRasterPos3dv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos3d", (PyCFunction) _wrap_glRasterPos3d, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos2sv", (PyCFunction) _wrap_glRasterPos2sv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos2s", (PyCFunction) _wrap_glRasterPos2s, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos2iv", (PyCFunction) _wrap_glRasterPos2iv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos2i", (PyCFunction) _wrap_glRasterPos2i, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos2fv", (PyCFunction) _wrap_glRasterPos2fv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos2f", (PyCFunction) _wrap_glRasterPos2f, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos2dv", (PyCFunction) _wrap_glRasterPos2dv, METH_VARARGS | METH_KEYWORDS },
+        { "glRasterPos2d", (PyCFunction) _wrap_glRasterPos2d, METH_VARARGS | METH_KEYWORDS },
+        { "glPushName", (PyCFunction) _wrap_glPushName, METH_VARARGS | METH_KEYWORDS },
+        { "glPushMatrix", (PyCFunction) _wrap_glPushMatrix, METH_VARARGS | METH_KEYWORDS },
+        { "glPushClientAttrib", (PyCFunction) _wrap_glPushClientAttrib, METH_VARARGS | METH_KEYWORDS },
+        { "glPushAttrib", (PyCFunction) _wrap_glPushAttrib, METH_VARARGS | METH_KEYWORDS },
+        { "glPrioritizeTextures", (PyCFunction) _wrap_glPrioritizeTextures, METH_VARARGS | METH_KEYWORDS },
+        { "glPopName", (PyCFunction) _wrap_glPopName, METH_VARARGS | METH_KEYWORDS },
+        { "glPopMatrix", (PyCFunction) _wrap_glPopMatrix, METH_VARARGS | METH_KEYWORDS },
+        { "glPopClientAttrib", (PyCFunction) _wrap_glPopClientAttrib, METH_VARARGS | METH_KEYWORDS },
+        { "glPopAttrib", (PyCFunction) _wrap_glPopAttrib, METH_VARARGS | METH_KEYWORDS },
+        { "glPolygonStipple", (PyCFunction) _wrap_glPolygonStipple, METH_VARARGS | METH_KEYWORDS },
+        { "glPolygonOffset", (PyCFunction) _wrap_glPolygonOffset, METH_VARARGS | METH_KEYWORDS },
+        { "glPolygonMode", (PyCFunction) _wrap_glPolygonMode, METH_VARARGS | METH_KEYWORDS },
+        { "glPointSize", (PyCFunction) _wrap_glPointSize, METH_VARARGS | METH_KEYWORDS },
+        { "glPixelZoom", (PyCFunction) _wrap_glPixelZoom, METH_VARARGS | METH_KEYWORDS },
+        { "glPixelTransferi", (PyCFunction) _wrap_glPixelTransferi, METH_VARARGS | METH_KEYWORDS },
+        { "glPixelTransferf", (PyCFunction) _wrap_glPixelTransferf, METH_VARARGS | METH_KEYWORDS },
+        { "glPixelStorei", (PyCFunction) _wrap_glPixelStorei, METH_VARARGS | METH_KEYWORDS },
+        { "glPixelStoref", (PyCFunction) _wrap_glPixelStoref, METH_VARARGS | METH_KEYWORDS },
+        { "glPixelMapusv", (PyCFunction) _wrap_glPixelMapusv, METH_VARARGS | METH_KEYWORDS },
+        { "glPixelMapuiv", (PyCFunction) _wrap_glPixelMapuiv, METH_VARARGS | METH_KEYWORDS },
+        { "glPixelMapfv", (PyCFunction) _wrap_glPixelMapfv, METH_VARARGS | METH_KEYWORDS },
+        { "glPassThrough", (PyCFunction) _wrap_glPassThrough, METH_VARARGS | METH_KEYWORDS },
+        { "glOrtho", (PyCFunction) _wrap_glOrtho, METH_VARARGS | METH_KEYWORDS },
+        { "glNormalPointer", (PyCFunction) _wrap_glNormalPointer, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3sv", (PyCFunction) _wrap_glNormal3sv, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3s", (PyCFunction) _wrap_glNormal3s, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3iv", (PyCFunction) _wrap_glNormal3iv, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3i", (PyCFunction) _wrap_glNormal3i, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3fv", (PyCFunction) _wrap_glNormal3fv, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3f", (PyCFunction) _wrap_glNormal3f, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3dv", (PyCFunction) _wrap_glNormal3dv, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3d", (PyCFunction) _wrap_glNormal3d, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3bv", (PyCFunction) _wrap_glNormal3bv, METH_VARARGS | METH_KEYWORDS },
+        { "glNormal3b", (PyCFunction) _wrap_glNormal3b, METH_VARARGS | METH_KEYWORDS },
+        { "glNewList", (PyCFunction) _wrap_glNewList, METH_VARARGS | METH_KEYWORDS },
+        { "glMultMatrixf", (PyCFunction) _wrap_glMultMatrixf, METH_VARARGS | METH_KEYWORDS },
+        { "glMultMatrixd", (PyCFunction) _wrap_glMultMatrixd, METH_VARARGS | METH_KEYWORDS },
+        { "glMatrixMode", (PyCFunction) _wrap_glMatrixMode, METH_VARARGS | METH_KEYWORDS },
+        { "glMaterialiv", (PyCFunction) _wrap_glMaterialiv, METH_VARARGS | METH_KEYWORDS },
+        { "glMateriali", (PyCFunction) _wrap_glMateriali, METH_VARARGS | METH_KEYWORDS },
+        { "glMaterialfv", (PyCFunction) _wrap_glMaterialfv, METH_VARARGS | METH_KEYWORDS },
+        { "glMaterialf", (PyCFunction) _wrap_glMaterialf, METH_VARARGS | METH_KEYWORDS },
+        { "glMapGrid2f", (PyCFunction) _wrap_glMapGrid2f, METH_VARARGS | METH_KEYWORDS },
+        { "glMapGrid2d", (PyCFunction) _wrap_glMapGrid2d, METH_VARARGS | METH_KEYWORDS },
+        { "glMapGrid1f", (PyCFunction) _wrap_glMapGrid1f, METH_VARARGS | METH_KEYWORDS },
+        { "glMapGrid1d", (PyCFunction) _wrap_glMapGrid1d, METH_VARARGS | METH_KEYWORDS },
+        { "glMap2f", (PyCFunction) _wrap_glMap2f, METH_VARARGS | METH_KEYWORDS },
+        { "glMap2d", (PyCFunction) _wrap_glMap2d, METH_VARARGS | METH_KEYWORDS },
+        { "glMap1f", (PyCFunction) _wrap_glMap1f, METH_VARARGS | METH_KEYWORDS },
+        { "glMap1d", (PyCFunction) _wrap_glMap1d, METH_VARARGS | METH_KEYWORDS },
+        { "glLogicOp", (PyCFunction) _wrap_glLogicOp, METH_VARARGS | METH_KEYWORDS },
+        { "glLoadName", (PyCFunction) _wrap_glLoadName, METH_VARARGS | METH_KEYWORDS },
+        { "glLoadMatrixf", (PyCFunction) _wrap_glLoadMatrixf, METH_VARARGS | METH_KEYWORDS },
+        { "glLoadMatrixd", (PyCFunction) _wrap_glLoadMatrixd, METH_VARARGS | METH_KEYWORDS },
+        { "glLoadIdentity", (PyCFunction) _wrap_glLoadIdentity, METH_VARARGS | METH_KEYWORDS },
+        { "glListBase", (PyCFunction) _wrap_glListBase, METH_VARARGS | METH_KEYWORDS },
+        { "glLineWidth", (PyCFunction) _wrap_glLineWidth, METH_VARARGS | METH_KEYWORDS },
+        { "glLineStipple", (PyCFunction) _wrap_glLineStipple, METH_VARARGS | METH_KEYWORDS },
+        { "glLightiv", (PyCFunction) _wrap_glLightiv, METH_VARARGS | METH_KEYWORDS },
+        { "glLighti", (PyCFunction) _wrap_glLighti, METH_VARARGS | METH_KEYWORDS },
+        { "glLightfv", (PyCFunction) _wrap_glLightfv, METH_VARARGS | METH_KEYWORDS },
+        { "glLightf", (PyCFunction) _wrap_glLightf, METH_VARARGS | METH_KEYWORDS },
+        { "glLightModeliv", (PyCFunction) _wrap_glLightModeliv, METH_VARARGS | METH_KEYWORDS },
+        { "glLightModeli", (PyCFunction) _wrap_glLightModeli, METH_VARARGS | METH_KEYWORDS },
+        { "glLightModelfv", (PyCFunction) _wrap_glLightModelfv, METH_VARARGS | METH_KEYWORDS },
+        { "glLightModelf", (PyCFunction) _wrap_glLightModelf, METH_VARARGS | METH_KEYWORDS },
+        { "glIsTexture", (PyCFunction) _wrap_glIsTexture, METH_VARARGS | METH_KEYWORDS },
+        { "glIsList", (PyCFunction) _wrap_glIsList, METH_VARARGS | METH_KEYWORDS },
+        { "glIsEnabled", (PyCFunction) _wrap_glIsEnabled, METH_VARARGS | METH_KEYWORDS },
+        { "glInterleavedArrays", (PyCFunction) _wrap_glInterleavedArrays, METH_VARARGS | METH_KEYWORDS },
+        { "glInitNames", (PyCFunction) _wrap_glInitNames, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexubv", (PyCFunction) _wrap_glIndexubv, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexub", (PyCFunction) _wrap_glIndexub, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexsv", (PyCFunction) _wrap_glIndexsv, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexs", (PyCFunction) _wrap_glIndexs, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexiv", (PyCFunction) _wrap_glIndexiv, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexi", (PyCFunction) _wrap_glIndexi, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexfv", (PyCFunction) _wrap_glIndexfv, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexf", (PyCFunction) _wrap_glIndexf, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexdv", (PyCFunction) _wrap_glIndexdv, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexd", (PyCFunction) _wrap_glIndexd, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexPointer", (PyCFunction) _wrap_glIndexPointer, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexMask", (PyCFunction) _wrap_glIndexMask, METH_VARARGS | METH_KEYWORDS },
+        { "glHint", (PyCFunction) _wrap_glHint, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexParameteriv", (PyCFunction) _wrap_glGetTexParameteriv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexParameterfv", (PyCFunction) _wrap_glGetTexParameterfv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexLevelParameteriv", (PyCFunction) _wrap_glGetTexLevelParameteriv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexLevelParameterfv", (PyCFunction) _wrap_glGetTexLevelParameterfv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexImage", (PyCFunction) _wrap_glGetTexImage, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexGeniv", (PyCFunction) _wrap_glGetTexGeniv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexGenfv", (PyCFunction) _wrap_glGetTexGenfv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexGendv", (PyCFunction) _wrap_glGetTexGendv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexEnviv", (PyCFunction) _wrap_glGetTexEnviv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetTexEnvfv", (PyCFunction) _wrap_glGetTexEnvfv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetString", (PyCFunction) _wrap_glGetString, METH_VARARGS | METH_KEYWORDS },
+        { "glGetPolygonStipple", (PyCFunction) _wrap_glGetPolygonStipple, METH_VARARGS | METH_KEYWORDS },
+        { "glGetPointerv", (PyCFunction) _wrap_glGetPointerv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetPixelMapusv", (PyCFunction) _wrap_glGetPixelMapusv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetPixelMapuiv", (PyCFunction) _wrap_glGetPixelMapuiv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetPixelMapfv", (PyCFunction) _wrap_glGetPixelMapfv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetMaterialiv", (PyCFunction) _wrap_glGetMaterialiv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetMaterialfv", (PyCFunction) _wrap_glGetMaterialfv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetMapiv", (PyCFunction) _wrap_glGetMapiv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetMapfv", (PyCFunction) _wrap_glGetMapfv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetMapdv", (PyCFunction) _wrap_glGetMapdv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetLightiv", (PyCFunction) _wrap_glGetLightiv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetLightfv", (PyCFunction) _wrap_glGetLightfv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetIntegerv", (PyCFunction) _wrap_glGetIntegerv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetFloatv", (PyCFunction) _wrap_glGetFloatv, METH_VARARGS | METH_KEYWORDS },
+        { "glGetError", (PyCFunction) _wrap_glGetError, METH_VARARGS | METH_KEYWORDS },
+        { "glGetDoublev", (PyCFunction) _wrap_glGetDoublev, METH_VARARGS | METH_KEYWORDS },
+        { "glGetClipPlane", (PyCFunction) _wrap_glGetClipPlane, METH_VARARGS | METH_KEYWORDS },
+        { "glGetBooleanv", (PyCFunction) _wrap_glGetBooleanv, METH_VARARGS | METH_KEYWORDS },
+        { "glGenTextures", (PyCFunction) _wrap_glGenTextures, METH_VARARGS | METH_KEYWORDS },
+        { "glGenLists", (PyCFunction) _wrap_glGenLists, METH_VARARGS | METH_KEYWORDS },
+        { "glFrustum", (PyCFunction) _wrap_glFrustum, METH_VARARGS | METH_KEYWORDS },
+        { "glFrontFace", (PyCFunction) _wrap_glFrontFace, METH_VARARGS | METH_KEYWORDS },
+        { "glFogiv", (PyCFunction) _wrap_glFogiv, METH_VARARGS | METH_KEYWORDS },
+        { "glFogi", (PyCFunction) _wrap_glFogi, METH_VARARGS | METH_KEYWORDS },
+        { "glFogfv", (PyCFunction) _wrap_glFogfv, METH_VARARGS | METH_KEYWORDS },
+        { "glFogf", (PyCFunction) _wrap_glFogf, METH_VARARGS | METH_KEYWORDS },
+        { "glFlush", (PyCFunction) _wrap_glFlush, METH_VARARGS | METH_KEYWORDS },
+        { "glFinish", (PyCFunction) _wrap_glFinish, METH_VARARGS | METH_KEYWORDS },
+        { "glFeedbackBuffer", (PyCFunction) _wrap_glFeedbackBuffer, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalPoint2", (PyCFunction) _wrap_glEvalPoint2, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalPoint1", (PyCFunction) _wrap_glEvalPoint1, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalMesh2", (PyCFunction) _wrap_glEvalMesh2, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalMesh1", (PyCFunction) _wrap_glEvalMesh1, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalCoord2fv", (PyCFunction) _wrap_glEvalCoord2fv, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalCoord2f", (PyCFunction) _wrap_glEvalCoord2f, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalCoord2dv", (PyCFunction) _wrap_glEvalCoord2dv, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalCoord2d", (PyCFunction) _wrap_glEvalCoord2d, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalCoord1fv", (PyCFunction) _wrap_glEvalCoord1fv, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalCoord1f", (PyCFunction) _wrap_glEvalCoord1f, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalCoord1dv", (PyCFunction) _wrap_glEvalCoord1dv, METH_VARARGS | METH_KEYWORDS },
+        { "glEvalCoord1d", (PyCFunction) _wrap_glEvalCoord1d, METH_VARARGS | METH_KEYWORDS },
+        { "glEndList", (PyCFunction) _wrap_glEndList, METH_VARARGS | METH_KEYWORDS },
+        { "glEnd", (PyCFunction) _wrap_glEnd, METH_VARARGS | METH_KEYWORDS },
+        { "glEnableClientState", (PyCFunction) _wrap_glEnableClientState, METH_VARARGS | METH_KEYWORDS },
+        { "glEnable", (PyCFunction) _wrap_glEnable, METH_VARARGS | METH_KEYWORDS },
+        { "glEdgeFlagv", (PyCFunction) _wrap_glEdgeFlagv, METH_VARARGS | METH_KEYWORDS },
+        { "glEdgeFlagPointer", (PyCFunction) _wrap_glEdgeFlagPointer, METH_VARARGS | METH_KEYWORDS },
+        { "glEdgeFlag", (PyCFunction) _wrap_glEdgeFlag, METH_VARARGS | METH_KEYWORDS },
+        { "glDrawPixels", (PyCFunction) _wrap_glDrawPixels, METH_VARARGS | METH_KEYWORDS },
+        { "glDrawElements", (PyCFunction) _wrap_glDrawElements, METH_VARARGS | METH_KEYWORDS },
+        { "glDrawBuffer", (PyCFunction) _wrap_glDrawBuffer, METH_VARARGS | METH_KEYWORDS },
+        { "glDrawArrays", (PyCFunction) _wrap_glDrawArrays, METH_VARARGS | METH_KEYWORDS },
+        { "glDisableClientState", (PyCFunction) _wrap_glDisableClientState, METH_VARARGS | METH_KEYWORDS },
+        { "glDisable", (PyCFunction) _wrap_glDisable, METH_VARARGS | METH_KEYWORDS },
+        { "glDepthRange", (PyCFunction) _wrap_glDepthRange, METH_VARARGS | METH_KEYWORDS },
+        { "glDepthMask", (PyCFunction) _wrap_glDepthMask, METH_VARARGS | METH_KEYWORDS },
+        { "glDepthFunc", (PyCFunction) _wrap_glDepthFunc, METH_VARARGS | METH_KEYWORDS },
+        { "glDeleteTextures", (PyCFunction) _wrap_glDeleteTextures, METH_VARARGS | METH_KEYWORDS },
+        { "glDeleteLists", (PyCFunction) _wrap_glDeleteLists, METH_VARARGS | METH_KEYWORDS },
+        { "glCullFace", (PyCFunction) _wrap_glCullFace, METH_VARARGS | METH_KEYWORDS },
+        { "glCopyTexSubImage2D", (PyCFunction) _wrap_glCopyTexSubImage2D, METH_VARARGS | METH_KEYWORDS },
+        { "glCopyTexSubImage1D", (PyCFunction) _wrap_glCopyTexSubImage1D, METH_VARARGS | METH_KEYWORDS },
+        { "glCopyTexImage2D", (PyCFunction) _wrap_glCopyTexImage2D, METH_VARARGS | METH_KEYWORDS },
+        { "glCopyTexImage1D", (PyCFunction) _wrap_glCopyTexImage1D, METH_VARARGS | METH_KEYWORDS },
+        { "glCopyPixels", (PyCFunction) _wrap_glCopyPixels, METH_VARARGS | METH_KEYWORDS },
+        { "glColorPointer", (PyCFunction) _wrap_glColorPointer, METH_VARARGS | METH_KEYWORDS },
+        { "glColorMaterial", (PyCFunction) _wrap_glColorMaterial, METH_VARARGS | METH_KEYWORDS },
+        { "glColorMask", (PyCFunction) _wrap_glColorMask, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4usv", (PyCFunction) _wrap_glColor4usv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4us", (PyCFunction) _wrap_glColor4us, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4uiv", (PyCFunction) _wrap_glColor4uiv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4ui", (PyCFunction) _wrap_glColor4ui, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4ubv", (PyCFunction) _wrap_glColor4ubv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4ub", (PyCFunction) _wrap_glColor4ub, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4sv", (PyCFunction) _wrap_glColor4sv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4s", (PyCFunction) _wrap_glColor4s, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4iv", (PyCFunction) _wrap_glColor4iv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4i", (PyCFunction) _wrap_glColor4i, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4fv", (PyCFunction) _wrap_glColor4fv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4f", (PyCFunction) _wrap_glColor4f, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4dv", (PyCFunction) _wrap_glColor4dv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4d", (PyCFunction) _wrap_glColor4d, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4bv", (PyCFunction) _wrap_glColor4bv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor4b", (PyCFunction) _wrap_glColor4b, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3usv", (PyCFunction) _wrap_glColor3usv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3us", (PyCFunction) _wrap_glColor3us, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3uiv", (PyCFunction) _wrap_glColor3uiv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3ui", (PyCFunction) _wrap_glColor3ui, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3ubv", (PyCFunction) _wrap_glColor3ubv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3ub", (PyCFunction) _wrap_glColor3ub, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3sv", (PyCFunction) _wrap_glColor3sv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3s", (PyCFunction) _wrap_glColor3s, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3iv", (PyCFunction) _wrap_glColor3iv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3i", (PyCFunction) _wrap_glColor3i, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3fv", (PyCFunction) _wrap_glColor3fv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3f", (PyCFunction) _wrap_glColor3f, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3dv", (PyCFunction) _wrap_glColor3dv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3d", (PyCFunction) _wrap_glColor3d, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3bv", (PyCFunction) _wrap_glColor3bv, METH_VARARGS | METH_KEYWORDS },
+        { "glColor3b", (PyCFunction) _wrap_glColor3b, METH_VARARGS | METH_KEYWORDS },
+        { "glClipPlane", (PyCFunction) _wrap_glClipPlane, METH_VARARGS | METH_KEYWORDS },
+        { "glClearStencil", (PyCFunction) _wrap_glClearStencil, METH_VARARGS | METH_KEYWORDS },
+        { "glClearIndex", (PyCFunction) _wrap_glClearIndex, METH_VARARGS | METH_KEYWORDS },
+        { "glClearDepth", (PyCFunction) _wrap_glClearDepth, METH_VARARGS | METH_KEYWORDS },
+        { "glClearColor", (PyCFunction) _wrap_glClearColor, METH_VARARGS | METH_KEYWORDS },
+        { "glClearAccum", (PyCFunction) _wrap_glClearAccum, METH_VARARGS | METH_KEYWORDS },
+        { "glClear", (PyCFunction) _wrap_glClear, METH_VARARGS | METH_KEYWORDS },
+        { "glCallLists", (PyCFunction) _wrap_glCallLists, METH_VARARGS | METH_KEYWORDS },
+        { "glCallList", (PyCFunction) _wrap_glCallList, METH_VARARGS | METH_KEYWORDS },
+        { "glBlendFunc", (PyCFunction) _wrap_glBlendFunc, METH_VARARGS | METH_KEYWORDS },
+        { "glBitmap", (PyCFunction) _wrap_glBitmap, METH_VARARGS | METH_KEYWORDS },
+        { "glBindTexture", (PyCFunction) _wrap_glBindTexture, METH_VARARGS | METH_KEYWORDS },
+        { "glBegin", (PyCFunction) _wrap_glBegin, METH_VARARGS | METH_KEYWORDS },
+        { "glArrayElement", (PyCFunction) _wrap_glArrayElement, METH_VARARGS | METH_KEYWORDS },
+        { "glAreTexturesResident", (PyCFunction) _wrap_glAreTexturesResident, METH_VARARGS | METH_KEYWORDS },
+        { "glAlphaFunc", (PyCFunction) _wrap_glAlphaFunc, METH_VARARGS | METH_KEYWORDS },
+        { "glAccum", (PyCFunction) _wrap_glAccum, METH_VARARGS | METH_KEYWORDS },
+        { "glAddSwapHintRectWin", (PyCFunction) _wrap_glAddSwapHintRectWin, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexMaterialSGI", (PyCFunction) _wrap_glIndexMaterialSGI, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexFuncSGI", (PyCFunction) _wrap_glIndexFuncSGI, METH_VARARGS | METH_KEYWORDS },
+        { "glCullParameterfvSGI", (PyCFunction) _wrap_glCullParameterfvSGI, METH_VARARGS | METH_KEYWORDS },
+        { "glCullParameterdvSGI", (PyCFunction) _wrap_glCullParameterdvSGI, METH_VARARGS | METH_KEYWORDS },
+        { "glUnlockArraysSGI", (PyCFunction) _wrap_glUnlockArraysSGI, METH_VARARGS | METH_KEYWORDS },
+        { "glLockArraysSGI", (PyCFunction) _wrap_glLockArraysSGI, METH_VARARGS | METH_KEYWORDS },
+        { "glGetColorTavleParameterivEXT", (PyCFunction) _wrap_glGetColorTavleParameterivEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glGetColorTableParamaterfvEXT", (PyCFunction) _wrap_glGetColorTableParamaterfvEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glGetColorTableEXT", (PyCFunction) _wrap_glGetColorTableEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glCopyColorTableEXT", (PyCFunction) _wrap_glCopyColorTableEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glColorTableEXT", (PyCFunction) _wrap_glColorTableEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glColorSubtableEXT", (PyCFunction) _wrap_glColorSubtableEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glVertexPointerEXT", (PyCFunction) _wrap_glVertexPointerEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glTexCoordPointerEXT", (PyCFunction) _wrap_glTexCoordPointerEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glNormalPointerEXT", (PyCFunction) _wrap_glNormalPointerEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glIndexPointerEXT", (PyCFunction) _wrap_glIndexPointerEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glGetPointervEXT", (PyCFunction) _wrap_glGetPointervEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glEdgeFlagPointerEXT", (PyCFunction) _wrap_glEdgeFlagPointerEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glDrawArraysEXT", (PyCFunction) _wrap_glDrawArraysEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glColorPointerEXT", (PyCFunction) _wrap_glColorPointerEXT, METH_VARARGS | METH_KEYWORDS },
+        { "glArrayElementEXT", (PyCFunction) _wrap_glArrayElementEXT, METH_VARARGS | METH_KEYWORDS },
         { NULL, NULL }
 };
 #ifdef __cplusplus
         { NULL, NULL }
 };
 #ifdef __cplusplus