Home | History | Annotate | Download | only in egl
      1 /* WARNING: This is auto-generated file. Do not modify, since changes will
      2  * be lost! Modify the generating script instead.
      3  *
      4  * Generated from Khronos EGL API description (egl.xml) revision 3338ed0db494d6a4db7f76627b38f0b1892db096.
      5  */
      6 
      7 static const char* s_EGL14[] =
      8 {
      9 	"eglBindAPI",
     10 	"eglBindTexImage",
     11 	"eglChooseConfig",
     12 	"eglCopyBuffers",
     13 	"eglCreateContext",
     14 	"eglCreatePbufferFromClientBuffer",
     15 	"eglCreatePbufferSurface",
     16 	"eglCreatePixmapSurface",
     17 	"eglCreateWindowSurface",
     18 	"eglDestroyContext",
     19 	"eglDestroySurface",
     20 	"eglGetConfigAttrib",
     21 	"eglGetConfigs",
     22 	"eglGetCurrentContext",
     23 	"eglGetCurrentDisplay",
     24 	"eglGetCurrentSurface",
     25 	"eglGetDisplay",
     26 	"eglGetError",
     27 	"eglGetProcAddress",
     28 	"eglInitialize",
     29 	"eglMakeCurrent",
     30 	"eglQueryAPI",
     31 	"eglQueryContext",
     32 	"eglQueryString",
     33 	"eglQuerySurface",
     34 	"eglReleaseTexImage",
     35 	"eglReleaseThread",
     36 	"eglSurfaceAttrib",
     37 	"eglSwapBuffers",
     38 	"eglSwapInterval",
     39 	"eglTerminate",
     40 	"eglWaitClient",
     41 	"eglWaitGL",
     42 	"eglWaitNative",
     43 };
     44 
     45 static const char* s_EGL15[] =
     46 {
     47 	"eglClientWaitSync",
     48 	"eglCreateImage",
     49 	"eglCreatePlatformPixmapSurface",
     50 	"eglCreatePlatformWindowSurface",
     51 	"eglCreateSync",
     52 	"eglDestroyImage",
     53 	"eglDestroySync",
     54 	"eglGetPlatformDisplay",
     55 	"eglGetSyncAttrib",
     56 	"eglWaitSync",
     57 };
     58 
     59 static const char* s_GLES10[] =
     60 {
     61 	"glActiveTexture",
     62 	"glAlphaFunc",
     63 	"glAlphaFuncx",
     64 	"glBindBuffer",
     65 	"glBindTexture",
     66 	"glBlendFunc",
     67 	"glBufferData",
     68 	"glBufferSubData",
     69 	"glClear",
     70 	"glClearColor",
     71 	"glClearColorx",
     72 	"glClearDepthf",
     73 	"glClearDepthx",
     74 	"glClearStencil",
     75 	"glClientActiveTexture",
     76 	"glClipPlanef",
     77 	"glClipPlanex",
     78 	"glColor4f",
     79 	"glColor4ub",
     80 	"glColor4x",
     81 	"glColorMask",
     82 	"glColorPointer",
     83 	"glCompressedTexImage2D",
     84 	"glCompressedTexSubImage2D",
     85 	"glCopyTexImage2D",
     86 	"glCopyTexSubImage2D",
     87 	"glCullFace",
     88 	"glDeleteBuffers",
     89 	"glDeleteTextures",
     90 	"glDepthFunc",
     91 	"glDepthMask",
     92 	"glDepthRangef",
     93 	"glDepthRangex",
     94 	"glDisable",
     95 	"glDisableClientState",
     96 	"glDrawArrays",
     97 	"glDrawElements",
     98 	"glEnable",
     99 	"glEnableClientState",
    100 	"glFinish",
    101 	"glFlush",
    102 	"glFogf",
    103 	"glFogfv",
    104 	"glFogx",
    105 	"glFogxv",
    106 	"glFrontFace",
    107 	"glFrustumf",
    108 	"glFrustumx",
    109 	"glGenBuffers",
    110 	"glGenTextures",
    111 	"glGetBooleanv",
    112 	"glGetBufferParameteriv",
    113 	"glGetClipPlanef",
    114 	"glGetClipPlanex",
    115 	"glGetError",
    116 	"glGetFixedv",
    117 	"glGetFloatv",
    118 	"glGetIntegerv",
    119 	"glGetLightfv",
    120 	"glGetLightxv",
    121 	"glGetMaterialfv",
    122 	"glGetMaterialxv",
    123 	"glGetPointerv",
    124 	"glGetString",
    125 	"glGetTexEnvfv",
    126 	"glGetTexEnviv",
    127 	"glGetTexEnvxv",
    128 	"glGetTexParameterfv",
    129 	"glGetTexParameteriv",
    130 	"glGetTexParameterxv",
    131 	"glHint",
    132 	"glIsBuffer",
    133 	"glIsEnabled",
    134 	"glIsTexture",
    135 	"glLightModelf",
    136 	"glLightModelfv",
    137 	"glLightModelx",
    138 	"glLightModelxv",
    139 	"glLightf",
    140 	"glLightfv",
    141 	"glLightx",
    142 	"glLightxv",
    143 	"glLineWidth",
    144 	"glLineWidthx",
    145 	"glLoadIdentity",
    146 	"glLoadMatrixf",
    147 	"glLoadMatrixx",
    148 	"glLogicOp",
    149 	"glMaterialf",
    150 	"glMaterialfv",
    151 	"glMaterialx",
    152 	"glMaterialxv",
    153 	"glMatrixMode",
    154 	"glMultMatrixf",
    155 	"glMultMatrixx",
    156 	"glMultiTexCoord4f",
    157 	"glMultiTexCoord4x",
    158 	"glNormal3f",
    159 	"glNormal3x",
    160 	"glNormalPointer",
    161 	"glOrthof",
    162 	"glOrthox",
    163 	"glPixelStorei",
    164 	"glPointParameterf",
    165 	"glPointParameterfv",
    166 	"glPointParameterx",
    167 	"glPointParameterxv",
    168 	"glPointSize",
    169 	"glPointSizex",
    170 	"glPolygonOffset",
    171 	"glPolygonOffsetx",
    172 	"glPopMatrix",
    173 	"glPushMatrix",
    174 	"glReadPixels",
    175 	"glRotatef",
    176 	"glRotatex",
    177 	"glSampleCoverage",
    178 	"glSampleCoveragex",
    179 	"glScalef",
    180 	"glScalex",
    181 	"glScissor",
    182 	"glShadeModel",
    183 	"glStencilFunc",
    184 	"glStencilMask",
    185 	"glStencilOp",
    186 	"glTexCoordPointer",
    187 	"glTexEnvf",
    188 	"glTexEnvfv",
    189 	"glTexEnvi",
    190 	"glTexEnviv",
    191 	"glTexEnvx",
    192 	"glTexEnvxv",
    193 	"glTexImage2D",
    194 	"glTexParameterf",
    195 	"glTexParameterfv",
    196 	"glTexParameteri",
    197 	"glTexParameteriv",
    198 	"glTexParameterx",
    199 	"glTexParameterxv",
    200 	"glTexSubImage2D",
    201 	"glTranslatef",
    202 	"glTranslatex",
    203 	"glVertexPointer",
    204 	"glViewport",
    205 };
    206 
    207 static const char* s_GLES20[] =
    208 {
    209 	"glActiveTexture",
    210 	"glAttachShader",
    211 	"glBindAttribLocation",
    212 	"glBindBuffer",
    213 	"glBindFramebuffer",
    214 	"glBindRenderbuffer",
    215 	"glBindTexture",
    216 	"glBlendColor",
    217 	"glBlendEquation",
    218 	"glBlendEquationSeparate",
    219 	"glBlendFunc",
    220 	"glBlendFuncSeparate",
    221 	"glBufferData",
    222 	"glBufferSubData",
    223 	"glCheckFramebufferStatus",
    224 	"glClear",
    225 	"glClearColor",
    226 	"glClearDepthf",
    227 	"glClearStencil",
    228 	"glColorMask",
    229 	"glCompileShader",
    230 	"glCompressedTexImage2D",
    231 	"glCompressedTexSubImage2D",
    232 	"glCopyTexImage2D",
    233 	"glCopyTexSubImage2D",
    234 	"glCreateProgram",
    235 	"glCreateShader",
    236 	"glCullFace",
    237 	"glDeleteBuffers",
    238 	"glDeleteFramebuffers",
    239 	"glDeleteProgram",
    240 	"glDeleteRenderbuffers",
    241 	"glDeleteShader",
    242 	"glDeleteTextures",
    243 	"glDepthFunc",
    244 	"glDepthMask",
    245 	"glDepthRangef",
    246 	"glDetachShader",
    247 	"glDisable",
    248 	"glDisableVertexAttribArray",
    249 	"glDrawArrays",
    250 	"glDrawElements",
    251 	"glEnable",
    252 	"glEnableVertexAttribArray",
    253 	"glFinish",
    254 	"glFlush",
    255 	"glFramebufferRenderbuffer",
    256 	"glFramebufferTexture2D",
    257 	"glFrontFace",
    258 	"glGenBuffers",
    259 	"glGenFramebuffers",
    260 	"glGenRenderbuffers",
    261 	"glGenTextures",
    262 	"glGenerateMipmap",
    263 	"glGetActiveAttrib",
    264 	"glGetActiveUniform",
    265 	"glGetAttachedShaders",
    266 	"glGetAttribLocation",
    267 	"glGetBooleanv",
    268 	"glGetBufferParameteriv",
    269 	"glGetError",
    270 	"glGetFloatv",
    271 	"glGetFramebufferAttachmentParameteriv",
    272 	"glGetIntegerv",
    273 	"glGetProgramInfoLog",
    274 	"glGetProgramiv",
    275 	"glGetRenderbufferParameteriv",
    276 	"glGetShaderInfoLog",
    277 	"glGetShaderPrecisionFormat",
    278 	"glGetShaderSource",
    279 	"glGetShaderiv",
    280 	"glGetString",
    281 	"glGetTexParameterfv",
    282 	"glGetTexParameteriv",
    283 	"glGetUniformLocation",
    284 	"glGetUniformfv",
    285 	"glGetUniformiv",
    286 	"glGetVertexAttribPointerv",
    287 	"glGetVertexAttribfv",
    288 	"glGetVertexAttribiv",
    289 	"glHint",
    290 	"glIsBuffer",
    291 	"glIsEnabled",
    292 	"glIsFramebuffer",
    293 	"glIsProgram",
    294 	"glIsRenderbuffer",
    295 	"glIsShader",
    296 	"glIsTexture",
    297 	"glLineWidth",
    298 	"glLinkProgram",
    299 	"glPixelStorei",
    300 	"glPolygonOffset",
    301 	"glReadPixels",
    302 	"glReleaseShaderCompiler",
    303 	"glRenderbufferStorage",
    304 	"glSampleCoverage",
    305 	"glScissor",
    306 	"glShaderBinary",
    307 	"glShaderSource",
    308 	"glStencilFunc",
    309 	"glStencilFuncSeparate",
    310 	"glStencilMask",
    311 	"glStencilMaskSeparate",
    312 	"glStencilOp",
    313 	"glStencilOpSeparate",
    314 	"glTexImage2D",
    315 	"glTexParameterf",
    316 	"glTexParameterfv",
    317 	"glTexParameteri",
    318 	"glTexParameteriv",
    319 	"glTexSubImage2D",
    320 	"glUniform1f",
    321 	"glUniform1fv",
    322 	"glUniform1i",
    323 	"glUniform1iv",
    324 	"glUniform2f",
    325 	"glUniform2fv",
    326 	"glUniform2i",
    327 	"glUniform2iv",
    328 	"glUniform3f",
    329 	"glUniform3fv",
    330 	"glUniform3i",
    331 	"glUniform3iv",
    332 	"glUniform4f",
    333 	"glUniform4fv",
    334 	"glUniform4i",
    335 	"glUniform4iv",
    336 	"glUniformMatrix2fv",
    337 	"glUniformMatrix3fv",
    338 	"glUniformMatrix4fv",
    339 	"glUseProgram",
    340 	"glValidateProgram",
    341 	"glVertexAttrib1f",
    342 	"glVertexAttrib1fv",
    343 	"glVertexAttrib2f",
    344 	"glVertexAttrib2fv",
    345 	"glVertexAttrib3f",
    346 	"glVertexAttrib3fv",
    347 	"glVertexAttrib4f",
    348 	"glVertexAttrib4fv",
    349 	"glVertexAttribPointer",
    350 	"glViewport",
    351 };
    352 
    353 static const char* s_GLES30[] =
    354 {
    355 	"glBeginQuery",
    356 	"glBeginTransformFeedback",
    357 	"glBindBufferBase",
    358 	"glBindBufferRange",
    359 	"glBindSampler",
    360 	"glBindTransformFeedback",
    361 	"glBindVertexArray",
    362 	"glBlitFramebuffer",
    363 	"glClearBufferfi",
    364 	"glClearBufferfv",
    365 	"glClearBufferiv",
    366 	"glClearBufferuiv",
    367 	"glClientWaitSync",
    368 	"glCompressedTexImage3D",
    369 	"glCompressedTexSubImage3D",
    370 	"glCopyBufferSubData",
    371 	"glCopyTexSubImage3D",
    372 	"glDeleteQueries",
    373 	"glDeleteSamplers",
    374 	"glDeleteSync",
    375 	"glDeleteTransformFeedbacks",
    376 	"glDeleteVertexArrays",
    377 	"glDrawArraysInstanced",
    378 	"glDrawBuffers",
    379 	"glDrawElementsInstanced",
    380 	"glDrawRangeElements",
    381 	"glEndQuery",
    382 	"glEndTransformFeedback",
    383 	"glFenceSync",
    384 	"glFlushMappedBufferRange",
    385 	"glFramebufferTextureLayer",
    386 	"glGenQueries",
    387 	"glGenSamplers",
    388 	"glGenTransformFeedbacks",
    389 	"glGenVertexArrays",
    390 	"glGetActiveUniformBlockName",
    391 	"glGetActiveUniformBlockiv",
    392 	"glGetActiveUniformsiv",
    393 	"glGetBufferParameteri64v",
    394 	"glGetBufferPointerv",
    395 	"glGetFragDataLocation",
    396 	"glGetInteger64i_v",
    397 	"glGetInteger64v",
    398 	"glGetIntegeri_v",
    399 	"glGetInternalformativ",
    400 	"glGetProgramBinary",
    401 	"glGetQueryObjectuiv",
    402 	"glGetQueryiv",
    403 	"glGetSamplerParameterfv",
    404 	"glGetSamplerParameteriv",
    405 	"glGetStringi",
    406 	"glGetSynciv",
    407 	"glGetTransformFeedbackVarying",
    408 	"glGetUniformBlockIndex",
    409 	"glGetUniformIndices",
    410 	"glGetUniformuiv",
    411 	"glGetVertexAttribIiv",
    412 	"glGetVertexAttribIuiv",
    413 	"glInvalidateFramebuffer",
    414 	"glInvalidateSubFramebuffer",
    415 	"glIsQuery",
    416 	"glIsSampler",
    417 	"glIsSync",
    418 	"glIsTransformFeedback",
    419 	"glIsVertexArray",
    420 	"glMapBufferRange",
    421 	"glPauseTransformFeedback",
    422 	"glProgramBinary",
    423 	"glProgramParameteri",
    424 	"glReadBuffer",
    425 	"glRenderbufferStorageMultisample",
    426 	"glResumeTransformFeedback",
    427 	"glSamplerParameterf",
    428 	"glSamplerParameterfv",
    429 	"glSamplerParameteri",
    430 	"glSamplerParameteriv",
    431 	"glTexImage3D",
    432 	"glTexStorage2D",
    433 	"glTexStorage3D",
    434 	"glTexSubImage3D",
    435 	"glTransformFeedbackVaryings",
    436 	"glUniform1ui",
    437 	"glUniform1uiv",
    438 	"glUniform2ui",
    439 	"glUniform2uiv",
    440 	"glUniform3ui",
    441 	"glUniform3uiv",
    442 	"glUniform4ui",
    443 	"glUniform4uiv",
    444 	"glUniformBlockBinding",
    445 	"glUniformMatrix2x3fv",
    446 	"glUniformMatrix2x4fv",
    447 	"glUniformMatrix3x2fv",
    448 	"glUniformMatrix3x4fv",
    449 	"glUniformMatrix4x2fv",
    450 	"glUniformMatrix4x3fv",
    451 	"glUnmapBuffer",
    452 	"glVertexAttribDivisor",
    453 	"glVertexAttribI4i",
    454 	"glVertexAttribI4iv",
    455 	"glVertexAttribI4ui",
    456 	"glVertexAttribI4uiv",
    457 	"glVertexAttribIPointer",
    458 	"glWaitSync",
    459 };
    460 
    461 static const char* s_EGL_ANDROID_blob_cache[] =
    462 {
    463 	"eglSetBlobCacheFuncsANDROID",
    464 };
    465 
    466 static const char* s_EGL_ANDROID_create_native_client_buffer[] =
    467 {
    468 	"eglCreateNativeClientBufferANDROID",
    469 };
    470 
    471 static const char* s_EGL_ANDROID_get_native_client_buffer[] =
    472 {
    473 	"eglGetNativeClientBufferANDROID",
    474 };
    475 
    476 static const char* s_EGL_ANDROID_native_fence_sync[] =
    477 {
    478 	"eglDupNativeFenceFDANDROID",
    479 };
    480 
    481 static const char* s_EGL_ANDROID_presentation_time[] =
    482 {
    483 	"eglPresentationTimeANDROID",
    484 };
    485 
    486 static const char* s_EGL_ANDROID_get_frame_timestamps[] =
    487 {
    488 	"eglGetCompositorTimingSupportedANDROID",
    489 	"eglGetCompositorTimingANDROID",
    490 	"eglGetNextFrameIdANDROID",
    491 	"eglGetFrameTimestampSupportedANDROID",
    492 	"eglGetFrameTimestampsANDROID",
    493 };
    494 
    495 static const char* s_EGL_ANGLE_query_surface_pointer[] =
    496 {
    497 	"eglQuerySurfacePointerANGLE",
    498 };
    499 
    500 static const char* s_EGL_EXT_client_sync[] =
    501 {
    502 	"eglClientSignalSyncEXT",
    503 };
    504 
    505 static const char* s_EGL_EXT_device_base[] =
    506 {
    507 	"eglQueryDeviceAttribEXT",
    508 	"eglQueryDeviceStringEXT",
    509 	"eglQueryDevicesEXT",
    510 	"eglQueryDisplayAttribEXT",
    511 };
    512 
    513 static const char* s_EGL_EXT_device_enumeration[] =
    514 {
    515 	"eglQueryDevicesEXT",
    516 };
    517 
    518 static const char* s_EGL_EXT_device_query[] =
    519 {
    520 	"eglQueryDeviceAttribEXT",
    521 	"eglQueryDeviceStringEXT",
    522 	"eglQueryDisplayAttribEXT",
    523 };
    524 
    525 static const char* s_EGL_EXT_image_dma_buf_import_modifiers[] =
    526 {
    527 	"eglQueryDmaBufFormatsEXT",
    528 	"eglQueryDmaBufModifiersEXT",
    529 };
    530 
    531 static const char* s_EGL_EXT_output_base[] =
    532 {
    533 	"eglGetOutputLayersEXT",
    534 	"eglGetOutputPortsEXT",
    535 	"eglOutputLayerAttribEXT",
    536 	"eglOutputPortAttribEXT",
    537 	"eglQueryOutputLayerAttribEXT",
    538 	"eglQueryOutputLayerStringEXT",
    539 	"eglQueryOutputPortAttribEXT",
    540 	"eglQueryOutputPortStringEXT",
    541 };
    542 
    543 static const char* s_EGL_EXT_platform_base[] =
    544 {
    545 	"eglCreatePlatformPixmapSurfaceEXT",
    546 	"eglCreatePlatformWindowSurfaceEXT",
    547 	"eglGetPlatformDisplayEXT",
    548 };
    549 
    550 static const char* s_EGL_EXT_stream_consumer_egloutput[] =
    551 {
    552 	"eglStreamConsumerOutputEXT",
    553 };
    554 
    555 static const char* s_EGL_EXT_swap_buffers_with_damage[] =
    556 {
    557 	"eglSwapBuffersWithDamageEXT",
    558 };
    559 
    560 static const char* s_EGL_EXT_sync_reuse[] =
    561 {
    562 	"eglUnsignalSyncEXT",
    563 };
    564 
    565 static const char* s_EGL_HI_clientpixmap[] =
    566 {
    567 	"eglCreatePixmapSurfaceHI",
    568 };
    569 
    570 static const char* s_EGL_KHR_cl_event2[] =
    571 {
    572 	"eglCreateSync64KHR",
    573 };
    574 
    575 static const char* s_EGL_KHR_debug[] =
    576 {
    577 	"eglDebugMessageControlKHR",
    578 	"eglLabelObjectKHR",
    579 	"eglQueryDebugKHR",
    580 };
    581 
    582 static const char* s_EGL_KHR_display_reference[] =
    583 {
    584 	"eglQueryDisplayAttribKHR",
    585 };
    586 
    587 static const char* s_EGL_KHR_fence_sync[] =
    588 {
    589 	"eglClientWaitSyncKHR",
    590 	"eglCreateSyncKHR",
    591 	"eglDestroySyncKHR",
    592 	"eglGetSyncAttribKHR",
    593 };
    594 
    595 static const char* s_EGL_KHR_image[] =
    596 {
    597 	"eglCreateImageKHR",
    598 	"eglDestroyImageKHR",
    599 };
    600 
    601 static const char* s_EGL_KHR_image_base[] =
    602 {
    603 	"eglCreateImageKHR",
    604 	"eglDestroyImageKHR",
    605 };
    606 
    607 static const char* s_EGL_KHR_lock_surface[] =
    608 {
    609 	"eglLockSurfaceKHR",
    610 	"eglUnlockSurfaceKHR",
    611 };
    612 
    613 static const char* s_EGL_KHR_lock_surface3[] =
    614 {
    615 	"eglLockSurfaceKHR",
    616 	"eglQuerySurface64KHR",
    617 	"eglUnlockSurfaceKHR",
    618 };
    619 
    620 static const char* s_EGL_KHR_partial_update[] =
    621 {
    622 	"eglSetDamageRegionKHR",
    623 };
    624 
    625 static const char* s_EGL_KHR_reusable_sync[] =
    626 {
    627 	"eglClientWaitSyncKHR",
    628 	"eglCreateSyncKHR",
    629 	"eglDestroySyncKHR",
    630 	"eglGetSyncAttribKHR",
    631 	"eglSignalSyncKHR",
    632 };
    633 
    634 static const char* s_EGL_KHR_stream[] =
    635 {
    636 	"eglCreateStreamKHR",
    637 	"eglDestroyStreamKHR",
    638 	"eglQueryStreamKHR",
    639 	"eglQueryStreamu64KHR",
    640 	"eglStreamAttribKHR",
    641 };
    642 
    643 static const char* s_EGL_KHR_stream_attrib[] =
    644 {
    645 	"eglCreateStreamAttribKHR",
    646 	"eglQueryStreamAttribKHR",
    647 	"eglSetStreamAttribKHR",
    648 	"eglStreamConsumerAcquireAttribKHR",
    649 	"eglStreamConsumerReleaseAttribKHR",
    650 };
    651 
    652 static const char* s_EGL_KHR_stream_consumer_gltexture[] =
    653 {
    654 	"eglStreamConsumerAcquireKHR",
    655 	"eglStreamConsumerGLTextureExternalKHR",
    656 	"eglStreamConsumerReleaseKHR",
    657 };
    658 
    659 static const char* s_EGL_KHR_stream_cross_process_fd[] =
    660 {
    661 	"eglCreateStreamFromFileDescriptorKHR",
    662 	"eglGetStreamFileDescriptorKHR",
    663 };
    664 
    665 static const char* s_EGL_KHR_stream_fifo[] =
    666 {
    667 	"eglQueryStreamTimeKHR",
    668 };
    669 
    670 static const char* s_EGL_KHR_stream_producer_eglsurface[] =
    671 {
    672 	"eglCreateStreamProducerSurfaceKHR",
    673 };
    674 
    675 static const char* s_EGL_KHR_swap_buffers_with_damage[] =
    676 {
    677 	"eglSwapBuffersWithDamageKHR",
    678 };
    679 
    680 static const char* s_EGL_KHR_wait_sync[] =
    681 {
    682 	"eglWaitSyncKHR",
    683 };
    684 
    685 static const char* s_EGL_MESA_drm_image[] =
    686 {
    687 	"eglCreateDRMImageMESA",
    688 	"eglExportDRMImageMESA",
    689 };
    690 
    691 static const char* s_EGL_MESA_image_dma_buf_export[] =
    692 {
    693 	"eglExportDMABUFImageMESA",
    694 	"eglExportDMABUFImageQueryMESA",
    695 };
    696 
    697 static const char* s_EGL_NOK_swap_region[] =
    698 {
    699 	"eglSwapBuffersRegionNOK",
    700 };
    701 
    702 static const char* s_EGL_NOK_swap_region2[] =
    703 {
    704 	"eglSwapBuffersRegion2NOK",
    705 };
    706 
    707 static const char* s_EGL_NV_native_query[] =
    708 {
    709 	"eglQueryNativeDisplayNV",
    710 	"eglQueryNativePixmapNV",
    711 	"eglQueryNativeWindowNV",
    712 };
    713 
    714 static const char* s_EGL_NV_post_sub_buffer[] =
    715 {
    716 	"eglPostSubBufferNV",
    717 };
    718 
    719 static const char* s_EGL_NV_stream_consumer_gltexture_yuv[] =
    720 {
    721 	"eglStreamConsumerGLTextureExternalAttribsNV",
    722 };
    723 
    724 static const char* s_EGL_NV_stream_flush[] =
    725 {
    726 	"eglStreamFlushNV",
    727 };
    728 
    729 static const char* s_EGL_NV_stream_metadata[] =
    730 {
    731 	"eglQueryDisplayAttribNV",
    732 	"eglQueryStreamMetadataNV",
    733 	"eglSetStreamMetadataNV",
    734 };
    735 
    736 static const char* s_EGL_NV_stream_reset[] =
    737 {
    738 	"eglResetStreamNV",
    739 };
    740 
    741 static const char* s_EGL_NV_stream_sync[] =
    742 {
    743 	"eglCreateStreamSyncNV",
    744 };
    745 
    746 static const char* s_EGL_NV_sync[] =
    747 {
    748 	"eglClientWaitSyncNV",
    749 	"eglCreateFenceSyncNV",
    750 	"eglDestroySyncNV",
    751 	"eglFenceNV",
    752 	"eglGetSyncAttribNV",
    753 	"eglSignalSyncNV",
    754 };
    755 
    756 static const char* s_EGL_NV_system_time[] =
    757 {
    758 	"eglGetSystemTimeFrequencyNV",
    759 	"eglGetSystemTimeNV",
    760 };
    761 
    762 static const char* s_EGL_EXT_compositor[] =
    763 {
    764 	"eglCompositorSetContextListEXT",
    765 	"eglCompositorSetContextAttributesEXT",
    766 	"eglCompositorSetWindowListEXT",
    767 	"eglCompositorSetWindowAttributesEXT",
    768 	"eglCompositorBindTexWindowEXT",
    769 	"eglCompositorSetSizeEXT",
    770 	"eglCompositorSwapPolicyEXT",
    771 };
    772 
    773 static const char* s_GL_APPLE_copy_texture_levels[] =
    774 {
    775 	"glCopyTextureLevelsAPPLE",
    776 };
    777 
    778 static const char* s_GL_APPLE_framebuffer_multisample[] =
    779 {
    780 	"glRenderbufferStorageMultisampleAPPLE",
    781 	"glResolveMultisampleFramebufferAPPLE",
    782 };
    783 
    784 static const char* s_GL_APPLE_sync[] =
    785 {
    786 	"glClientWaitSyncAPPLE",
    787 	"glDeleteSyncAPPLE",
    788 	"glFenceSyncAPPLE",
    789 	"glGetInteger64vAPPLE",
    790 	"glGetSyncivAPPLE",
    791 	"glIsSyncAPPLE",
    792 	"glWaitSyncAPPLE",
    793 };
    794 
    795 static const char* s_GL_EXT_debug_marker[] =
    796 {
    797 	"glInsertEventMarkerEXT",
    798 	"glPopGroupMarkerEXT",
    799 	"glPushGroupMarkerEXT",
    800 };
    801 
    802 static const char* s_GL_EXT_discard_framebuffer[] =
    803 {
    804 	"glDiscardFramebufferEXT",
    805 };
    806 
    807 static const char* s_GL_EXT_map_buffer_range[] =
    808 {
    809 	"glFlushMappedBufferRangeEXT",
    810 	"glMapBufferRangeEXT",
    811 };
    812 
    813 static const char* s_GL_EXT_multi_draw_arrays[] =
    814 {
    815 	"glMultiDrawArraysEXT",
    816 	"glMultiDrawElementsEXT",
    817 };
    818 
    819 static const char* s_GL_EXT_multisampled_render_to_texture[] =
    820 {
    821 	"glFramebufferTexture2DMultisampleEXT",
    822 	"glRenderbufferStorageMultisampleEXT",
    823 };
    824 
    825 static const char* s_GL_EXT_robustness[] =
    826 {
    827 	"glGetGraphicsResetStatusEXT",
    828 	"glGetnUniformfvEXT",
    829 	"glGetnUniformivEXT",
    830 	"glReadnPixelsEXT",
    831 };
    832 
    833 static const char* s_GL_EXT_texture_storage[] =
    834 {
    835 	"glTexStorage1DEXT",
    836 	"glTexStorage2DEXT",
    837 	"glTexStorage3DEXT",
    838 	"glTextureStorage1DEXT",
    839 	"glTextureStorage2DEXT",
    840 	"glTextureStorage3DEXT",
    841 };
    842 
    843 static const char* s_GL_IMG_multisampled_render_to_texture[] =
    844 {
    845 	"glFramebufferTexture2DMultisampleIMG",
    846 	"glRenderbufferStorageMultisampleIMG",
    847 };
    848 
    849 static const char* s_GL_IMG_user_clip_plane[] =
    850 {
    851 	"glClipPlanefIMG",
    852 	"glClipPlanexIMG",
    853 };
    854 
    855 static const char* s_GL_NV_fence[] =
    856 {
    857 	"glDeleteFencesNV",
    858 	"glFinishFenceNV",
    859 	"glGenFencesNV",
    860 	"glGetFenceivNV",
    861 	"glIsFenceNV",
    862 	"glSetFenceNV",
    863 	"glTestFenceNV",
    864 };
    865 
    866 static const char* s_GL_OES_EGL_image[] =
    867 {
    868 	"glEGLImageTargetRenderbufferStorageOES",
    869 	"glEGLImageTargetTexture2DOES",
    870 };
    871 
    872 static const char* s_GL_OES_blend_equation_separate[] =
    873 {
    874 	"glBlendEquationSeparateOES",
    875 };
    876 
    877 static const char* s_GL_OES_blend_func_separate[] =
    878 {
    879 	"glBlendFuncSeparateOES",
    880 };
    881 
    882 static const char* s_GL_OES_blend_subtract[] =
    883 {
    884 	"glBlendEquationOES",
    885 };
    886 
    887 static const char* s_GL_OES_draw_texture[] =
    888 {
    889 	"glDrawTexfOES",
    890 	"glDrawTexfvOES",
    891 	"glDrawTexiOES",
    892 	"glDrawTexivOES",
    893 	"glDrawTexsOES",
    894 	"glDrawTexsvOES",
    895 	"glDrawTexxOES",
    896 	"glDrawTexxvOES",
    897 };
    898 
    899 static const char* s_GL_OES_fixed_point[] =
    900 {
    901 	"glAlphaFuncxOES",
    902 	"glClearColorxOES",
    903 	"glClearDepthxOES",
    904 	"glClipPlanexOES",
    905 	"glColor4xOES",
    906 	"glDepthRangexOES",
    907 	"glFogxOES",
    908 	"glFogxvOES",
    909 	"glFrustumxOES",
    910 	"glGetClipPlanexOES",
    911 	"glGetFixedvOES",
    912 	"glGetLightxvOES",
    913 	"glGetMaterialxvOES",
    914 	"glGetTexEnvxvOES",
    915 	"glGetTexParameterxvOES",
    916 	"glLightModelxOES",
    917 	"glLightModelxvOES",
    918 	"glLightxOES",
    919 	"glLightxvOES",
    920 	"glLineWidthxOES",
    921 	"glLoadMatrixxOES",
    922 	"glMaterialxOES",
    923 	"glMaterialxvOES",
    924 	"glMultMatrixxOES",
    925 	"glMultiTexCoord4xOES",
    926 	"glNormal3xOES",
    927 	"glOrthoxOES",
    928 	"glPointParameterxOES",
    929 	"glPointParameterxvOES",
    930 	"glPointSizexOES",
    931 	"glPolygonOffsetxOES",
    932 	"glRotatexOES",
    933 	"glSampleCoveragexOES",
    934 	"glScalexOES",
    935 	"glTexEnvxOES",
    936 	"glTexEnvxvOES",
    937 	"glTexParameterxOES",
    938 	"glTexParameterxvOES",
    939 	"glTranslatexOES",
    940 };
    941 
    942 static const char* s_GL_OES_framebuffer_object[] =
    943 {
    944 	"glBindFramebufferOES",
    945 	"glBindRenderbufferOES",
    946 	"glCheckFramebufferStatusOES",
    947 	"glDeleteFramebuffersOES",
    948 	"glDeleteRenderbuffersOES",
    949 	"glFramebufferRenderbufferOES",
    950 	"glFramebufferTexture2DOES",
    951 	"glGenFramebuffersOES",
    952 	"glGenRenderbuffersOES",
    953 	"glGenerateMipmapOES",
    954 	"glGetFramebufferAttachmentParameterivOES",
    955 	"glGetRenderbufferParameterivOES",
    956 	"glIsFramebufferOES",
    957 	"glIsRenderbufferOES",
    958 	"glRenderbufferStorageOES",
    959 };
    960 
    961 static const char* s_GL_OES_mapbuffer[] =
    962 {
    963 	"glGetBufferPointervOES",
    964 	"glMapBufferOES",
    965 	"glUnmapBufferOES",
    966 };
    967 
    968 static const char* s_GL_OES_matrix_palette[] =
    969 {
    970 	"glCurrentPaletteMatrixOES",
    971 	"glLoadPaletteFromModelViewMatrixOES",
    972 	"glMatrixIndexPointerOES",
    973 	"glWeightPointerOES",
    974 };
    975 
    976 static const char* s_GL_OES_point_size_array[] =
    977 {
    978 	"glPointSizePointerOES",
    979 };
    980 
    981 static const char* s_GL_OES_query_matrix[] =
    982 {
    983 	"glQueryMatrixxOES",
    984 };
    985 
    986 static const char* s_GL_OES_single_precision[] =
    987 {
    988 	"glClearDepthfOES",
    989 	"glClipPlanefOES",
    990 	"glDepthRangefOES",
    991 	"glFrustumfOES",
    992 	"glGetClipPlanefOES",
    993 	"glOrthofOES",
    994 };
    995 
    996 static const char* s_GL_OES_texture_cube_map[] =
    997 {
    998 	"glGetTexGenfvOES",
    999 	"glGetTexGenivOES",
   1000 	"glGetTexGenxvOES",
   1001 	"glTexGenfOES",
   1002 	"glTexGenfvOES",
   1003 	"glTexGeniOES",
   1004 	"glTexGenivOES",
   1005 	"glTexGenxOES",
   1006 	"glTexGenxvOES",
   1007 };
   1008 
   1009 static const char* s_GL_OES_vertex_array_object[] =
   1010 {
   1011 	"glBindVertexArrayOES",
   1012 	"glDeleteVertexArraysOES",
   1013 	"glGenVertexArraysOES",
   1014 	"glIsVertexArrayOES",
   1015 };
   1016 
   1017 static const char* s_GL_QCOM_driver_control[] =
   1018 {
   1019 	"glDisableDriverControlQCOM",
   1020 	"glEnableDriverControlQCOM",
   1021 	"glGetDriverControlStringQCOM",
   1022 	"glGetDriverControlsQCOM",
   1023 };
   1024 
   1025 static const char* s_GL_QCOM_extended_get[] =
   1026 {
   1027 	"glExtGetBufferPointervQCOM",
   1028 	"glExtGetBuffersQCOM",
   1029 	"glExtGetFramebuffersQCOM",
   1030 	"glExtGetRenderbuffersQCOM",
   1031 	"glExtGetTexLevelParameterivQCOM",
   1032 	"glExtGetTexSubImageQCOM",
   1033 	"glExtGetTexturesQCOM",
   1034 	"glExtTexObjectStateOverrideiQCOM",
   1035 };
   1036 
   1037 static const char* s_GL_QCOM_extended_get2[] =
   1038 {
   1039 	"glExtGetProgramBinarySourceQCOM",
   1040 	"glExtGetProgramsQCOM",
   1041 	"glExtGetShadersQCOM",
   1042 	"glExtIsProgramBinaryQCOM",
   1043 };
   1044 
   1045 static const char* s_GL_QCOM_tiled_rendering[] =
   1046 {
   1047 	"glEndTilingQCOM",
   1048 	"glStartTilingQCOM",
   1049 };
   1050 
   1051 static const char* s_GL_AMD_framebuffer_multisample_advanced[] =
   1052 {
   1053 	"glNamedRenderbufferStorageMultisampleAdvancedAMD",
   1054 	"glRenderbufferStorageMultisampleAdvancedAMD",
   1055 };
   1056 
   1057 static const char* s_GL_AMD_performance_monitor[] =
   1058 {
   1059 	"glBeginPerfMonitorAMD",
   1060 	"glDeletePerfMonitorsAMD",
   1061 	"glEndPerfMonitorAMD",
   1062 	"glGenPerfMonitorsAMD",
   1063 	"glGetPerfMonitorCounterDataAMD",
   1064 	"glGetPerfMonitorCounterInfoAMD",
   1065 	"glGetPerfMonitorCounterStringAMD",
   1066 	"glGetPerfMonitorCountersAMD",
   1067 	"glGetPerfMonitorGroupStringAMD",
   1068 	"glGetPerfMonitorGroupsAMD",
   1069 	"glSelectPerfMonitorCountersAMD",
   1070 };
   1071 
   1072 static const char* s_GL_ANGLE_framebuffer_blit[] =
   1073 {
   1074 	"glBlitFramebufferANGLE",
   1075 };
   1076 
   1077 static const char* s_GL_ANGLE_framebuffer_multisample[] =
   1078 {
   1079 	"glRenderbufferStorageMultisampleANGLE",
   1080 };
   1081 
   1082 static const char* s_GL_ANGLE_instanced_arrays[] =
   1083 {
   1084 	"glDrawArraysInstancedANGLE",
   1085 	"glDrawElementsInstancedANGLE",
   1086 	"glVertexAttribDivisorANGLE",
   1087 };
   1088 
   1089 static const char* s_GL_ANGLE_translated_shader_source[] =
   1090 {
   1091 	"glGetTranslatedShaderSourceANGLE",
   1092 };
   1093 
   1094 static const char* s_GL_EXT_EGL_image_storage[] =
   1095 {
   1096 	"glEGLImageTargetTexStorageEXT",
   1097 	"glEGLImageTargetTextureStorageEXT",
   1098 };
   1099 
   1100 static const char* s_GL_EXT_base_instance[] =
   1101 {
   1102 	"glDrawArraysInstancedBaseInstanceEXT",
   1103 	"glDrawElementsInstancedBaseInstanceEXT",
   1104 	"glDrawElementsInstancedBaseVertexBaseInstanceEXT",
   1105 };
   1106 
   1107 static const char* s_GL_EXT_blend_func_extended[] =
   1108 {
   1109 	"glBindFragDataLocationEXT",
   1110 	"glBindFragDataLocationIndexedEXT",
   1111 	"glGetFragDataIndexEXT",
   1112 	"glGetProgramResourceLocationIndexEXT",
   1113 };
   1114 
   1115 static const char* s_GL_EXT_buffer_storage[] =
   1116 {
   1117 	"glBufferStorageEXT",
   1118 };
   1119 
   1120 static const char* s_GL_EXT_clear_texture[] =
   1121 {
   1122 	"glClearTexImageEXT",
   1123 	"glClearTexSubImageEXT",
   1124 };
   1125 
   1126 static const char* s_GL_EXT_clip_control[] =
   1127 {
   1128 	"glClipControlEXT",
   1129 };
   1130 
   1131 static const char* s_GL_EXT_copy_image[] =
   1132 {
   1133 	"glCopyImageSubDataEXT",
   1134 };
   1135 
   1136 static const char* s_GL_EXT_debug_label[] =
   1137 {
   1138 	"glGetObjectLabelEXT",
   1139 	"glLabelObjectEXT",
   1140 };
   1141 
   1142 static const char* s_GL_EXT_disjoint_timer_query[] =
   1143 {
   1144 	"glBeginQueryEXT",
   1145 	"glDeleteQueriesEXT",
   1146 	"glEndQueryEXT",
   1147 	"glGenQueriesEXT",
   1148 	"glGetQueryObjecti64vEXT",
   1149 	"glGetQueryObjectivEXT",
   1150 	"glGetQueryObjectui64vEXT",
   1151 	"glGetQueryObjectuivEXT",
   1152 	"glGetQueryivEXT",
   1153 	"glIsQueryEXT",
   1154 	"glQueryCounterEXT",
   1155 };
   1156 
   1157 static const char* s_GL_EXT_draw_buffers[] =
   1158 {
   1159 	"glDrawBuffersEXT",
   1160 };
   1161 
   1162 static const char* s_GL_EXT_draw_buffers_indexed[] =
   1163 {
   1164 	"glBlendEquationSeparateiEXT",
   1165 	"glBlendEquationiEXT",
   1166 	"glBlendFuncSeparateiEXT",
   1167 	"glBlendFunciEXT",
   1168 	"glColorMaskiEXT",
   1169 	"glDisableiEXT",
   1170 	"glEnableiEXT",
   1171 	"glIsEnablediEXT",
   1172 };
   1173 
   1174 static const char* s_GL_EXT_draw_elements_base_vertex[] =
   1175 {
   1176 	"glDrawElementsBaseVertexEXT",
   1177 	"glDrawElementsInstancedBaseVertexEXT",
   1178 	"glDrawRangeElementsBaseVertexEXT",
   1179 	"glMultiDrawElementsBaseVertexEXT",
   1180 };
   1181 
   1182 static const char* s_GL_EXT_draw_instanced[] =
   1183 {
   1184 	"glDrawArraysInstancedEXT",
   1185 	"glDrawElementsInstancedEXT",
   1186 };
   1187 
   1188 static const char* s_GL_EXT_draw_transform_feedback[] =
   1189 {
   1190 	"glDrawTransformFeedbackEXT",
   1191 	"glDrawTransformFeedbackInstancedEXT",
   1192 };
   1193 
   1194 static const char* s_GL_EXT_external_buffer[] =
   1195 {
   1196 	"glBufferStorageExternalEXT",
   1197 	"glNamedBufferStorageExternalEXT",
   1198 };
   1199 
   1200 static const char* s_GL_EXT_geometry_shader[] =
   1201 {
   1202 	"glFramebufferTextureEXT",
   1203 };
   1204 
   1205 static const char* s_GL_EXT_instanced_arrays[] =
   1206 {
   1207 	"glDrawArraysInstancedEXT",
   1208 	"glDrawElementsInstancedEXT",
   1209 	"glVertexAttribDivisorEXT",
   1210 };
   1211 
   1212 static const char* s_GL_EXT_memory_object[] =
   1213 {
   1214 	"glBufferStorageMemEXT",
   1215 	"glCreateMemoryObjectsEXT",
   1216 	"glDeleteMemoryObjectsEXT",
   1217 	"glGetMemoryObjectParameterivEXT",
   1218 	"glGetUnsignedBytevEXT",
   1219 	"glGetUnsignedBytei_vEXT",
   1220 	"glIsMemoryObjectEXT",
   1221 	"glMemoryObjectParameterivEXT",
   1222 	"glNamedBufferStorageMemEXT",
   1223 	"glTexStorageMem2DEXT",
   1224 	"glTexStorageMem2DMultisampleEXT",
   1225 	"glTexStorageMem3DEXT",
   1226 	"glTexStorageMem3DMultisampleEXT",
   1227 	"glTextureStorageMem2DEXT",
   1228 	"glTextureStorageMem2DMultisampleEXT",
   1229 	"glTextureStorageMem3DEXT",
   1230 	"glTextureStorageMem3DMultisampleEXT",
   1231 };
   1232 
   1233 static const char* s_GL_EXT_memory_object_fd[] =
   1234 {
   1235 	"glImportMemoryFdEXT",
   1236 };
   1237 
   1238 static const char* s_GL_EXT_memory_object_win32[] =
   1239 {
   1240 	"glImportMemoryWin32HandleEXT",
   1241 	"glImportMemoryWin32NameEXT",
   1242 };
   1243 
   1244 static const char* s_GL_EXT_multi_draw_indirect[] =
   1245 {
   1246 	"glMultiDrawArraysIndirectEXT",
   1247 	"glMultiDrawElementsIndirectEXT",
   1248 };
   1249 
   1250 static const char* s_GL_EXT_multiview_draw_buffers[] =
   1251 {
   1252 	"glDrawBuffersIndexedEXT",
   1253 	"glGetIntegeri_vEXT",
   1254 	"glReadBufferIndexedEXT",
   1255 };
   1256 
   1257 static const char* s_GL_EXT_occlusion_query_boolean[] =
   1258 {
   1259 	"glBeginQueryEXT",
   1260 	"glDeleteQueriesEXT",
   1261 	"glEndQueryEXT",
   1262 	"glGenQueriesEXT",
   1263 	"glGetQueryObjectuivEXT",
   1264 	"glGetQueryivEXT",
   1265 	"glIsQueryEXT",
   1266 };
   1267 
   1268 static const char* s_GL_EXT_polygon_offset_clamp[] =
   1269 {
   1270 	"glPolygonOffsetClampEXT",
   1271 };
   1272 
   1273 static const char* s_GL_EXT_primitive_bounding_box[] =
   1274 {
   1275 	"glPrimitiveBoundingBoxEXT",
   1276 };
   1277 
   1278 static const char* s_GL_EXT_raster_multisample[] =
   1279 {
   1280 	"glRasterSamplesEXT",
   1281 };
   1282 
   1283 static const char* s_GL_EXT_semaphore[] =
   1284 {
   1285 	"glDeleteSemaphoresEXT",
   1286 	"glGenSemaphoresEXT",
   1287 	"glGetSemaphoreParameterui64vEXT",
   1288 	"glGetUnsignedBytevEXT",
   1289 	"glGetUnsignedBytei_vEXT",
   1290 	"glIsSemaphoreEXT",
   1291 	"glSemaphoreParameterui64vEXT",
   1292 	"glSignalSemaphoreEXT",
   1293 	"glWaitSemaphoreEXT",
   1294 };
   1295 
   1296 static const char* s_GL_EXT_semaphore_fd[] =
   1297 {
   1298 	"glImportSemaphoreFdEXT",
   1299 };
   1300 
   1301 static const char* s_GL_EXT_semaphore_win32[] =
   1302 {
   1303 	"glImportSemaphoreWin32HandleEXT",
   1304 	"glImportSemaphoreWin32NameEXT",
   1305 };
   1306 
   1307 static const char* s_GL_EXT_separate_shader_objects[] =
   1308 {
   1309 	"glActiveShaderProgramEXT",
   1310 	"glBindProgramPipelineEXT",
   1311 	"glCreateShaderProgramvEXT",
   1312 	"glDeleteProgramPipelinesEXT",
   1313 	"glGenProgramPipelinesEXT",
   1314 	"glGetProgramPipelineInfoLogEXT",
   1315 	"glGetProgramPipelineivEXT",
   1316 	"glIsProgramPipelineEXT",
   1317 	"glProgramParameteriEXT",
   1318 	"glProgramUniform1fEXT",
   1319 	"glProgramUniform1fvEXT",
   1320 	"glProgramUniform1iEXT",
   1321 	"glProgramUniform1ivEXT",
   1322 	"glProgramUniform1uiEXT",
   1323 	"glProgramUniform1uivEXT",
   1324 	"glProgramUniform2fEXT",
   1325 	"glProgramUniform2fvEXT",
   1326 	"glProgramUniform2iEXT",
   1327 	"glProgramUniform2ivEXT",
   1328 	"glProgramUniform2uiEXT",
   1329 	"glProgramUniform2uivEXT",
   1330 	"glProgramUniform3fEXT",
   1331 	"glProgramUniform3fvEXT",
   1332 	"glProgramUniform3iEXT",
   1333 	"glProgramUniform3ivEXT",
   1334 	"glProgramUniform3uiEXT",
   1335 	"glProgramUniform3uivEXT",
   1336 	"glProgramUniform4fEXT",
   1337 	"glProgramUniform4fvEXT",
   1338 	"glProgramUniform4iEXT",
   1339 	"glProgramUniform4ivEXT",
   1340 	"glProgramUniform4uiEXT",
   1341 	"glProgramUniform4uivEXT",
   1342 	"glProgramUniformMatrix2fvEXT",
   1343 	"glProgramUniformMatrix2x3fvEXT",
   1344 	"glProgramUniformMatrix2x4fvEXT",
   1345 	"glProgramUniformMatrix3fvEXT",
   1346 	"glProgramUniformMatrix3x2fvEXT",
   1347 	"glProgramUniformMatrix3x4fvEXT",
   1348 	"glProgramUniformMatrix4fvEXT",
   1349 	"glProgramUniformMatrix4x2fvEXT",
   1350 	"glProgramUniformMatrix4x3fvEXT",
   1351 	"glUseProgramStagesEXT",
   1352 	"glValidateProgramPipelineEXT",
   1353 };
   1354 
   1355 static const char* s_GL_EXT_shader_framebuffer_fetch_non_coherent[] =
   1356 {
   1357 	"glFramebufferFetchBarrierEXT",
   1358 };
   1359 
   1360 static const char* s_GL_EXT_shader_pixel_local_storage2[] =
   1361 {
   1362 	"glClearPixelLocalStorageuiEXT",
   1363 	"glFramebufferPixelLocalStorageSizeEXT",
   1364 	"glGetFramebufferPixelLocalStorageSizeEXT",
   1365 };
   1366 
   1367 static const char* s_GL_EXT_sparse_texture[] =
   1368 {
   1369 	"glTexPageCommitmentEXT",
   1370 };
   1371 
   1372 static const char* s_GL_EXT_tessellation_shader[] =
   1373 {
   1374 	"glPatchParameteriEXT",
   1375 };
   1376 
   1377 static const char* s_GL_EXT_texture_border_clamp[] =
   1378 {
   1379 	"glGetSamplerParameterIivEXT",
   1380 	"glGetSamplerParameterIuivEXT",
   1381 	"glGetTexParameterIivEXT",
   1382 	"glGetTexParameterIuivEXT",
   1383 	"glSamplerParameterIivEXT",
   1384 	"glSamplerParameterIuivEXT",
   1385 	"glTexParameterIivEXT",
   1386 	"glTexParameterIuivEXT",
   1387 };
   1388 
   1389 static const char* s_GL_EXT_texture_buffer[] =
   1390 {
   1391 	"glTexBufferEXT",
   1392 	"glTexBufferRangeEXT",
   1393 };
   1394 
   1395 static const char* s_GL_EXT_texture_view[] =
   1396 {
   1397 	"glTextureViewEXT",
   1398 };
   1399 
   1400 static const char* s_GL_EXT_win32_keyed_mutex[] =
   1401 {
   1402 	"glAcquireKeyedMutexWin32EXT",
   1403 	"glReleaseKeyedMutexWin32EXT",
   1404 };
   1405 
   1406 static const char* s_GL_EXT_window_rectangles[] =
   1407 {
   1408 	"glWindowRectanglesEXT",
   1409 };
   1410 
   1411 static const char* s_GL_IMG_bindless_texture[] =
   1412 {
   1413 	"glGetTextureHandleIMG",
   1414 	"glGetTextureSamplerHandleIMG",
   1415 	"glProgramUniformHandleui64IMG",
   1416 	"glProgramUniformHandleui64vIMG",
   1417 	"glUniformHandleui64IMG",
   1418 	"glUniformHandleui64vIMG",
   1419 };
   1420 
   1421 static const char* s_GL_IMG_framebuffer_downsample[] =
   1422 {
   1423 	"glFramebufferTexture2DDownsampleIMG",
   1424 	"glFramebufferTextureLayerDownsampleIMG",
   1425 };
   1426 
   1427 static const char* s_GL_INTEL_framebuffer_CMAA[] =
   1428 {
   1429 	"glApplyFramebufferAttachmentCMAAINTEL",
   1430 };
   1431 
   1432 static const char* s_GL_INTEL_performance_query[] =
   1433 {
   1434 	"glBeginPerfQueryINTEL",
   1435 	"glCreatePerfQueryINTEL",
   1436 	"glDeletePerfQueryINTEL",
   1437 	"glEndPerfQueryINTEL",
   1438 	"glGetFirstPerfQueryIdINTEL",
   1439 	"glGetNextPerfQueryIdINTEL",
   1440 	"glGetPerfCounterInfoINTEL",
   1441 	"glGetPerfQueryDataINTEL",
   1442 	"glGetPerfQueryIdByNameINTEL",
   1443 	"glGetPerfQueryInfoINTEL",
   1444 };
   1445 
   1446 static const char* s_GL_KHR_blend_equation_advanced[] =
   1447 {
   1448 	"glBlendBarrierKHR",
   1449 };
   1450 
   1451 static const char* s_GL_KHR_debug[] =
   1452 {
   1453 	"glDebugMessageCallbackKHR",
   1454 	"glDebugMessageControlKHR",
   1455 	"glDebugMessageInsertKHR",
   1456 	"glGetDebugMessageLogKHR",
   1457 	"glGetObjectLabelKHR",
   1458 	"glGetObjectPtrLabelKHR",
   1459 	"glGetPointervKHR",
   1460 	"glObjectLabelKHR",
   1461 	"glObjectPtrLabelKHR",
   1462 	"glPopDebugGroupKHR",
   1463 	"glPushDebugGroupKHR",
   1464 };
   1465 
   1466 static const char* s_GL_KHR_robustness[] =
   1467 {
   1468 	"glGetGraphicsResetStatusKHR",
   1469 	"glGetnUniformfvKHR",
   1470 	"glGetnUniformivKHR",
   1471 	"glGetnUniformuivKHR",
   1472 	"glReadnPixelsKHR",
   1473 };
   1474 
   1475 static const char* s_GL_KHR_parallel_shader_compile[] =
   1476 {
   1477 	"glMaxShaderCompilerThreadsKHR",
   1478 };
   1479 
   1480 static const char* s_GL_NV_bindless_texture[] =
   1481 {
   1482 	"glGetImageHandleNV",
   1483 	"glGetTextureHandleNV",
   1484 	"glGetTextureSamplerHandleNV",
   1485 	"glIsImageHandleResidentNV",
   1486 	"glIsTextureHandleResidentNV",
   1487 	"glMakeImageHandleNonResidentNV",
   1488 	"glMakeImageHandleResidentNV",
   1489 	"glMakeTextureHandleNonResidentNV",
   1490 	"glMakeTextureHandleResidentNV",
   1491 	"glProgramUniformHandleui64NV",
   1492 	"glProgramUniformHandleui64vNV",
   1493 	"glUniformHandleui64NV",
   1494 	"glUniformHandleui64vNV",
   1495 };
   1496 
   1497 static const char* s_GL_NV_blend_equation_advanced[] =
   1498 {
   1499 	"glBlendBarrierNV",
   1500 	"glBlendParameteriNV",
   1501 };
   1502 
   1503 static const char* s_GL_NV_clip_space_w_scaling[] =
   1504 {
   1505 	"glViewportPositionWScaleNV",
   1506 };
   1507 
   1508 static const char* s_GL_NV_conditional_render[] =
   1509 {
   1510 	"glBeginConditionalRenderNV",
   1511 	"glEndConditionalRenderNV",
   1512 };
   1513 
   1514 static const char* s_GL_NV_conservative_raster[] =
   1515 {
   1516 	"glSubpixelPrecisionBiasNV",
   1517 };
   1518 
   1519 static const char* s_GL_NV_conservative_raster_pre_snap_triangles[] =
   1520 {
   1521 	"glConservativeRasterParameteriNV",
   1522 };
   1523 
   1524 static const char* s_GL_NV_copy_buffer[] =
   1525 {
   1526 	"glCopyBufferSubDataNV",
   1527 };
   1528 
   1529 static const char* s_GL_NV_coverage_sample[] =
   1530 {
   1531 	"glCoverageMaskNV",
   1532 	"glCoverageOperationNV",
   1533 };
   1534 
   1535 static const char* s_GL_NV_draw_buffers[] =
   1536 {
   1537 	"glDrawBuffersNV",
   1538 };
   1539 
   1540 static const char* s_GL_NV_draw_instanced[] =
   1541 {
   1542 	"glDrawArraysInstancedNV",
   1543 	"glDrawElementsInstancedNV",
   1544 };
   1545 
   1546 static const char* s_GL_NV_draw_vulkan_image[] =
   1547 {
   1548 	"glDrawVkImageNV",
   1549 	"glGetVkProcAddrNV",
   1550 	"glWaitVkSemaphoreNV",
   1551 	"glSignalVkSemaphoreNV",
   1552 	"glSignalVkFenceNV",
   1553 };
   1554 
   1555 static const char* s_GL_NV_fragment_coverage_to_color[] =
   1556 {
   1557 	"glFragmentCoverageColorNV",
   1558 };
   1559 
   1560 static const char* s_GL_NV_framebuffer_blit[] =
   1561 {
   1562 	"glBlitFramebufferNV",
   1563 };
   1564 
   1565 static const char* s_GL_NV_framebuffer_mixed_samples[] =
   1566 {
   1567 	"glCoverageModulationNV",
   1568 	"glCoverageModulationTableNV",
   1569 	"glGetCoverageModulationTableNV",
   1570 	"glRasterSamplesEXT",
   1571 };
   1572 
   1573 static const char* s_GL_NV_framebuffer_multisample[] =
   1574 {
   1575 	"glRenderbufferStorageMultisampleNV",
   1576 };
   1577 
   1578 static const char* s_GL_NV_gpu_shader5[] =
   1579 {
   1580 	"glGetUniformi64vNV",
   1581 	"glProgramUniform1i64NV",
   1582 	"glProgramUniform1i64vNV",
   1583 	"glProgramUniform1ui64NV",
   1584 	"glProgramUniform1ui64vNV",
   1585 	"glProgramUniform2i64NV",
   1586 	"glProgramUniform2i64vNV",
   1587 	"glProgramUniform2ui64NV",
   1588 	"glProgramUniform2ui64vNV",
   1589 	"glProgramUniform3i64NV",
   1590 	"glProgramUniform3i64vNV",
   1591 	"glProgramUniform3ui64NV",
   1592 	"glProgramUniform3ui64vNV",
   1593 	"glProgramUniform4i64NV",
   1594 	"glProgramUniform4i64vNV",
   1595 	"glProgramUniform4ui64NV",
   1596 	"glProgramUniform4ui64vNV",
   1597 	"glUniform1i64NV",
   1598 	"glUniform1i64vNV",
   1599 	"glUniform1ui64NV",
   1600 	"glUniform1ui64vNV",
   1601 	"glUniform2i64NV",
   1602 	"glUniform2i64vNV",
   1603 	"glUniform2ui64NV",
   1604 	"glUniform2ui64vNV",
   1605 	"glUniform3i64NV",
   1606 	"glUniform3i64vNV",
   1607 	"glUniform3ui64NV",
   1608 	"glUniform3ui64vNV",
   1609 	"glUniform4i64NV",
   1610 	"glUniform4i64vNV",
   1611 	"glUniform4ui64NV",
   1612 	"glUniform4ui64vNV",
   1613 };
   1614 
   1615 static const char* s_GL_NV_instanced_arrays[] =
   1616 {
   1617 	"glVertexAttribDivisorNV",
   1618 };
   1619 
   1620 static const char* s_GL_NV_internalformat_sample_query[] =
   1621 {
   1622 	"glGetInternalformatSampleivNV",
   1623 };
   1624 
   1625 static const char* s_GL_NV_memory_attachment[] =
   1626 {
   1627 	"glBufferAttachMemoryNV",
   1628 	"glGetMemoryObjectDetachedResourcesuivNV",
   1629 	"glNamedBufferAttachMemoryNV",
   1630 	"glResetMemoryObjectParameterNV",
   1631 	"glTexAttachMemoryNV",
   1632 	"glTextureAttachMemoryNV",
   1633 };
   1634 
   1635 static const char* s_GL_NV_non_square_matrices[] =
   1636 {
   1637 	"glUniformMatrix2x3fvNV",
   1638 	"glUniformMatrix2x4fvNV",
   1639 	"glUniformMatrix3x2fvNV",
   1640 	"glUniformMatrix3x4fvNV",
   1641 	"glUniformMatrix4x2fvNV",
   1642 	"glUniformMatrix4x3fvNV",
   1643 };
   1644 
   1645 static const char* s_GL_NV_path_rendering[] =
   1646 {
   1647 	"glCopyPathNV",
   1648 	"glCoverFillPathInstancedNV",
   1649 	"glCoverFillPathNV",
   1650 	"glCoverStrokePathInstancedNV",
   1651 	"glCoverStrokePathNV",
   1652 	"glDeletePathsNV",
   1653 	"glGenPathsNV",
   1654 	"glGetPathCommandsNV",
   1655 	"glGetPathCoordsNV",
   1656 	"glGetPathDashArrayNV",
   1657 	"glGetPathLengthNV",
   1658 	"glGetPathMetricRangeNV",
   1659 	"glGetPathMetricsNV",
   1660 	"glGetPathParameterfvNV",
   1661 	"glGetPathParameterivNV",
   1662 	"glGetPathSpacingNV",
   1663 	"glGetProgramResourcefvNV",
   1664 	"glInterpolatePathsNV",
   1665 	"glIsPathNV",
   1666 	"glIsPointInFillPathNV",
   1667 	"glIsPointInStrokePathNV",
   1668 	"glMatrixFrustumEXT",
   1669 	"glMatrixLoad3x2fNV",
   1670 	"glMatrixLoad3x3fNV",
   1671 	"glMatrixLoadIdentityEXT",
   1672 	"glMatrixLoadTranspose3x3fNV",
   1673 	"glMatrixLoadTransposedEXT",
   1674 	"glMatrixLoadTransposefEXT",
   1675 	"glMatrixLoaddEXT",
   1676 	"glMatrixLoadfEXT",
   1677 	"glMatrixMult3x2fNV",
   1678 	"glMatrixMult3x3fNV",
   1679 	"glMatrixMultTranspose3x3fNV",
   1680 	"glMatrixMultTransposedEXT",
   1681 	"glMatrixMultTransposefEXT",
   1682 	"glMatrixMultdEXT",
   1683 	"glMatrixMultfEXT",
   1684 	"glMatrixOrthoEXT",
   1685 	"glMatrixPopEXT",
   1686 	"glMatrixPushEXT",
   1687 	"glMatrixRotatedEXT",
   1688 	"glMatrixRotatefEXT",
   1689 	"glMatrixScaledEXT",
   1690 	"glMatrixScalefEXT",
   1691 	"glMatrixTranslatedEXT",
   1692 	"glMatrixTranslatefEXT",
   1693 	"glPathCommandsNV",
   1694 	"glPathCoordsNV",
   1695 	"glPathCoverDepthFuncNV",
   1696 	"glPathDashArrayNV",
   1697 	"glPathGlyphIndexArrayNV",
   1698 	"glPathGlyphIndexRangeNV",
   1699 	"glPathGlyphRangeNV",
   1700 	"glPathGlyphsNV",
   1701 	"glPathMemoryGlyphIndexArrayNV",
   1702 	"glPathParameterfNV",
   1703 	"glPathParameterfvNV",
   1704 	"glPathParameteriNV",
   1705 	"glPathParameterivNV",
   1706 	"glPathStencilDepthOffsetNV",
   1707 	"glPathStencilFuncNV",
   1708 	"glPathStringNV",
   1709 	"glPathSubCommandsNV",
   1710 	"glPathSubCoordsNV",
   1711 	"glPointAlongPathNV",
   1712 	"glProgramPathFragmentInputGenNV",
   1713 	"glStencilFillPathInstancedNV",
   1714 	"glStencilFillPathNV",
   1715 	"glStencilStrokePathInstancedNV",
   1716 	"glStencilStrokePathNV",
   1717 	"glStencilThenCoverFillPathInstancedNV",
   1718 	"glStencilThenCoverFillPathNV",
   1719 	"glStencilThenCoverStrokePathInstancedNV",
   1720 	"glStencilThenCoverStrokePathNV",
   1721 	"glTransformPathNV",
   1722 	"glWeightPathsNV",
   1723 };
   1724 
   1725 static const char* s_GL_NV_polygon_mode[] =
   1726 {
   1727 	"glPolygonModeNV",
   1728 };
   1729 
   1730 static const char* s_GL_NV_read_buffer[] =
   1731 {
   1732 	"glReadBufferNV",
   1733 };
   1734 
   1735 static const char* s_GL_NV_sample_locations[] =
   1736 {
   1737 	"glFramebufferSampleLocationsfvNV",
   1738 	"glNamedFramebufferSampleLocationsfvNV",
   1739 	"glResolveDepthValuesNV",
   1740 };
   1741 
   1742 static const char* s_GL_NV_scissor_exclusive[] =
   1743 {
   1744 	"glScissorExclusiveArrayvNV",
   1745 	"glScissorExclusiveNV",
   1746 };
   1747 
   1748 static const char* s_GL_NV_viewport_array[] =
   1749 {
   1750 	"glDepthRangeArrayfvNV",
   1751 	"glDepthRangeIndexedfNV",
   1752 	"glDisableiNV",
   1753 	"glEnableiNV",
   1754 	"glGetFloati_vNV",
   1755 	"glIsEnablediNV",
   1756 	"glScissorArrayvNV",
   1757 	"glScissorIndexedNV",
   1758 	"glScissorIndexedvNV",
   1759 	"glViewportArrayvNV",
   1760 	"glViewportIndexedfNV",
   1761 	"glViewportIndexedfvNV",
   1762 };
   1763 
   1764 static const char* s_GL_NV_viewport_swizzle[] =
   1765 {
   1766 	"glViewportSwizzleNV",
   1767 };
   1768 
   1769 static const char* s_GL_OES_copy_image[] =
   1770 {
   1771 	"glCopyImageSubDataOES",
   1772 };
   1773 
   1774 static const char* s_GL_OES_draw_buffers_indexed[] =
   1775 {
   1776 	"glBlendEquationSeparateiOES",
   1777 	"glBlendEquationiOES",
   1778 	"glBlendFuncSeparateiOES",
   1779 	"glBlendFunciOES",
   1780 	"glColorMaskiOES",
   1781 	"glDisableiOES",
   1782 	"glEnableiOES",
   1783 	"glIsEnablediOES",
   1784 };
   1785 
   1786 static const char* s_GL_OES_draw_elements_base_vertex[] =
   1787 {
   1788 	"glDrawElementsBaseVertexOES",
   1789 	"glDrawElementsInstancedBaseVertexOES",
   1790 	"glDrawRangeElementsBaseVertexOES",
   1791 	"glMultiDrawElementsBaseVertexEXT",
   1792 };
   1793 
   1794 static const char* s_GL_OES_geometry_shader[] =
   1795 {
   1796 	"glFramebufferTextureOES",
   1797 };
   1798 
   1799 static const char* s_GL_OES_get_program_binary[] =
   1800 {
   1801 	"glGetProgramBinaryOES",
   1802 	"glProgramBinaryOES",
   1803 };
   1804 
   1805 static const char* s_GL_OES_primitive_bounding_box[] =
   1806 {
   1807 	"glPrimitiveBoundingBoxOES",
   1808 };
   1809 
   1810 static const char* s_GL_OES_sample_shading[] =
   1811 {
   1812 	"glMinSampleShadingOES",
   1813 };
   1814 
   1815 static const char* s_GL_OES_tessellation_shader[] =
   1816 {
   1817 	"glPatchParameteriOES",
   1818 };
   1819 
   1820 static const char* s_GL_OES_texture_3D[] =
   1821 {
   1822 	"glCompressedTexImage3DOES",
   1823 	"glCompressedTexSubImage3DOES",
   1824 	"glCopyTexSubImage3DOES",
   1825 	"glFramebufferTexture3DOES",
   1826 	"glTexImage3DOES",
   1827 	"glTexSubImage3DOES",
   1828 };
   1829 
   1830 static const char* s_GL_OES_texture_border_clamp[] =
   1831 {
   1832 	"glGetSamplerParameterIivOES",
   1833 	"glGetSamplerParameterIuivOES",
   1834 	"glGetTexParameterIivOES",
   1835 	"glGetTexParameterIuivOES",
   1836 	"glSamplerParameterIivOES",
   1837 	"glSamplerParameterIuivOES",
   1838 	"glTexParameterIivOES",
   1839 	"glTexParameterIuivOES",
   1840 };
   1841 
   1842 static const char* s_GL_OES_texture_buffer[] =
   1843 {
   1844 	"glTexBufferOES",
   1845 	"glTexBufferRangeOES",
   1846 };
   1847 
   1848 static const char* s_GL_OES_texture_storage_multisample_2d_array[] =
   1849 {
   1850 	"glTexStorage3DMultisampleOES",
   1851 };
   1852 
   1853 static const char* s_GL_OES_texture_view[] =
   1854 {
   1855 	"glTextureViewOES",
   1856 };
   1857 
   1858 static const char* s_GL_OES_viewport_array[] =
   1859 {
   1860 	"glDepthRangeArrayfvOES",
   1861 	"glDepthRangeIndexedfOES",
   1862 	"glDisableiOES",
   1863 	"glEnableiOES",
   1864 	"glGetFloati_vOES",
   1865 	"glIsEnablediOES",
   1866 	"glScissorArrayvOES",
   1867 	"glScissorIndexedOES",
   1868 	"glScissorIndexedvOES",
   1869 	"glViewportArrayvOES",
   1870 	"glViewportIndexedfOES",
   1871 	"glViewportIndexedfvOES",
   1872 };
   1873 
   1874 static const char* s_GL_OVR_multiview[] =
   1875 {
   1876 	"glFramebufferTextureMultiviewOVR",
   1877 };
   1878 
   1879 static const char* s_GL_OVR_multiview_multisampled_render_to_texture[] =
   1880 {
   1881 	"glFramebufferTextureMultisampleMultiviewOVR",
   1882 };
   1883 
   1884 static const char* s_GL_QCOM_alpha_test[] =
   1885 {
   1886 	"glAlphaFuncQCOM",
   1887 };
   1888 
   1889 static const char* s_GL_QCOM_framebuffer_foveated[] =
   1890 {
   1891 	"glFramebufferFoveationConfigQCOM",
   1892 	"glFramebufferFoveationParametersQCOM",
   1893 };
   1894 
   1895 static const char* s_GL_QCOM_texture_foveated[] =
   1896 {
   1897 	"glTextureFoveationParametersQCOM",
   1898 };
   1899 
   1900 static const char* s_GL_QCOM_shader_framebuffer_fetch_noncoherent[] =
   1901 {
   1902 	"glFramebufferFetchBarrierQCOM",
   1903 };
   1904 
   1905 static const struct
   1906 {
   1907 	const char*			name;
   1908 	const int			numFunctions;
   1909 	const char* const*	functions;
   1910 } s_extensions[] =
   1911 {
   1912 	{ "EGL_ANDROID_blob_cache",								DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_blob_cache),							s_EGL_ANDROID_blob_cache							},
   1913 	{ "EGL_ANDROID_create_native_client_buffer",			DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_create_native_client_buffer),			s_EGL_ANDROID_create_native_client_buffer			},
   1914 	{ "EGL_ANDROID_get_native_client_buffer",				DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_get_native_client_buffer),				s_EGL_ANDROID_get_native_client_buffer				},
   1915 	{ "EGL_ANDROID_native_fence_sync",						DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_native_fence_sync),					s_EGL_ANDROID_native_fence_sync						},
   1916 	{ "EGL_ANDROID_presentation_time",						DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_presentation_time),					s_EGL_ANDROID_presentation_time						},
   1917 	{ "EGL_ANDROID_get_frame_timestamps",					DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_get_frame_timestamps),					s_EGL_ANDROID_get_frame_timestamps					},
   1918 	{ "EGL_ANGLE_query_surface_pointer",					DE_LENGTH_OF_ARRAY(s_EGL_ANGLE_query_surface_pointer),					s_EGL_ANGLE_query_surface_pointer					},
   1919 	{ "EGL_EXT_client_sync",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_client_sync),								s_EGL_EXT_client_sync								},
   1920 	{ "EGL_EXT_device_base",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_base),								s_EGL_EXT_device_base								},
   1921 	{ "EGL_EXT_device_enumeration",							DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_enumeration),						s_EGL_EXT_device_enumeration						},
   1922 	{ "EGL_EXT_device_query",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_query),								s_EGL_EXT_device_query								},
   1923 	{ "EGL_EXT_image_dma_buf_import_modifiers",				DE_LENGTH_OF_ARRAY(s_EGL_EXT_image_dma_buf_import_modifiers),			s_EGL_EXT_image_dma_buf_import_modifiers			},
   1924 	{ "EGL_EXT_output_base",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_output_base),								s_EGL_EXT_output_base								},
   1925 	{ "EGL_EXT_platform_base",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_platform_base),							s_EGL_EXT_platform_base								},
   1926 	{ "EGL_EXT_stream_consumer_egloutput",					DE_LENGTH_OF_ARRAY(s_EGL_EXT_stream_consumer_egloutput),				s_EGL_EXT_stream_consumer_egloutput					},
   1927 	{ "EGL_EXT_swap_buffers_with_damage",					DE_LENGTH_OF_ARRAY(s_EGL_EXT_swap_buffers_with_damage),					s_EGL_EXT_swap_buffers_with_damage					},
   1928 	{ "EGL_EXT_sync_reuse",									DE_LENGTH_OF_ARRAY(s_EGL_EXT_sync_reuse),								s_EGL_EXT_sync_reuse								},
   1929 	{ "EGL_HI_clientpixmap",								DE_LENGTH_OF_ARRAY(s_EGL_HI_clientpixmap),								s_EGL_HI_clientpixmap								},
   1930 	{ "EGL_KHR_cl_event2",									DE_LENGTH_OF_ARRAY(s_EGL_KHR_cl_event2),								s_EGL_KHR_cl_event2									},
   1931 	{ "EGL_KHR_debug",										DE_LENGTH_OF_ARRAY(s_EGL_KHR_debug),									s_EGL_KHR_debug										},
   1932 	{ "EGL_KHR_display_reference",							DE_LENGTH_OF_ARRAY(s_EGL_KHR_display_reference),						s_EGL_KHR_display_reference							},
   1933 	{ "EGL_KHR_fence_sync",									DE_LENGTH_OF_ARRAY(s_EGL_KHR_fence_sync),								s_EGL_KHR_fence_sync								},
   1934 	{ "EGL_KHR_image",										DE_LENGTH_OF_ARRAY(s_EGL_KHR_image),									s_EGL_KHR_image										},
   1935 	{ "EGL_KHR_image_base",									DE_LENGTH_OF_ARRAY(s_EGL_KHR_image_base),								s_EGL_KHR_image_base								},
   1936 	{ "EGL_KHR_lock_surface",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface),								s_EGL_KHR_lock_surface								},
   1937 	{ "EGL_KHR_lock_surface3",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface3),							s_EGL_KHR_lock_surface3								},
   1938 	{ "EGL_KHR_partial_update",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_partial_update),							s_EGL_KHR_partial_update							},
   1939 	{ "EGL_KHR_reusable_sync",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_reusable_sync),							s_EGL_KHR_reusable_sync								},
   1940 	{ "EGL_KHR_stream",										DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream),									s_EGL_KHR_stream									},
   1941 	{ "EGL_KHR_stream_attrib",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_attrib),							s_EGL_KHR_stream_attrib								},
   1942 	{ "EGL_KHR_stream_consumer_gltexture",					DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_consumer_gltexture),				s_EGL_KHR_stream_consumer_gltexture					},
   1943 	{ "EGL_KHR_stream_cross_process_fd",					DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_cross_process_fd),					s_EGL_KHR_stream_cross_process_fd					},
   1944 	{ "EGL_KHR_stream_fifo",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_fifo),								s_EGL_KHR_stream_fifo								},
   1945 	{ "EGL_KHR_stream_producer_eglsurface",					DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_producer_eglsurface),				s_EGL_KHR_stream_producer_eglsurface				},
   1946 	{ "EGL_KHR_swap_buffers_with_damage",					DE_LENGTH_OF_ARRAY(s_EGL_KHR_swap_buffers_with_damage),					s_EGL_KHR_swap_buffers_with_damage					},
   1947 	{ "EGL_KHR_wait_sync",									DE_LENGTH_OF_ARRAY(s_EGL_KHR_wait_sync),								s_EGL_KHR_wait_sync									},
   1948 	{ "EGL_MESA_drm_image",									DE_LENGTH_OF_ARRAY(s_EGL_MESA_drm_image),								s_EGL_MESA_drm_image								},
   1949 	{ "EGL_MESA_image_dma_buf_export",						DE_LENGTH_OF_ARRAY(s_EGL_MESA_image_dma_buf_export),					s_EGL_MESA_image_dma_buf_export						},
   1950 	{ "EGL_NOK_swap_region",								DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region),								s_EGL_NOK_swap_region								},
   1951 	{ "EGL_NOK_swap_region2",								DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region2),								s_EGL_NOK_swap_region2								},
   1952 	{ "EGL_NV_native_query",								DE_LENGTH_OF_ARRAY(s_EGL_NV_native_query),								s_EGL_NV_native_query								},
   1953 	{ "EGL_NV_post_sub_buffer",								DE_LENGTH_OF_ARRAY(s_EGL_NV_post_sub_buffer),							s_EGL_NV_post_sub_buffer							},
   1954 	{ "EGL_NV_stream_consumer_gltexture_yuv",				DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_consumer_gltexture_yuv),				s_EGL_NV_stream_consumer_gltexture_yuv				},
   1955 	{ "EGL_NV_stream_flush",								DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_flush),								s_EGL_NV_stream_flush								},
   1956 	{ "EGL_NV_stream_metadata",								DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_metadata),							s_EGL_NV_stream_metadata							},
   1957 	{ "EGL_NV_stream_reset",								DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_reset),								s_EGL_NV_stream_reset								},
   1958 	{ "EGL_NV_stream_sync",									DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_sync),								s_EGL_NV_stream_sync								},
   1959 	{ "EGL_NV_sync",										DE_LENGTH_OF_ARRAY(s_EGL_NV_sync),										s_EGL_NV_sync										},
   1960 	{ "EGL_NV_system_time",									DE_LENGTH_OF_ARRAY(s_EGL_NV_system_time),								s_EGL_NV_system_time								},
   1961 	{ "EGL_EXT_compositor",									DE_LENGTH_OF_ARRAY(s_EGL_EXT_compositor),								s_EGL_EXT_compositor								},
   1962 	{ "GL_APPLE_copy_texture_levels",						DE_LENGTH_OF_ARRAY(s_GL_APPLE_copy_texture_levels),						s_GL_APPLE_copy_texture_levels						},
   1963 	{ "GL_APPLE_framebuffer_multisample",					DE_LENGTH_OF_ARRAY(s_GL_APPLE_framebuffer_multisample),					s_GL_APPLE_framebuffer_multisample					},
   1964 	{ "GL_APPLE_sync",										DE_LENGTH_OF_ARRAY(s_GL_APPLE_sync),									s_GL_APPLE_sync										},
   1965 	{ "GL_EXT_debug_marker",								DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_marker),								s_GL_EXT_debug_marker								},
   1966 	{ "GL_EXT_discard_framebuffer",							DE_LENGTH_OF_ARRAY(s_GL_EXT_discard_framebuffer),						s_GL_EXT_discard_framebuffer						},
   1967 	{ "GL_EXT_map_buffer_range",							DE_LENGTH_OF_ARRAY(s_GL_EXT_map_buffer_range),							s_GL_EXT_map_buffer_range							},
   1968 	{ "GL_EXT_multi_draw_arrays",							DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_arrays),							s_GL_EXT_multi_draw_arrays							},
   1969 	{ "GL_EXT_multisampled_render_to_texture",				DE_LENGTH_OF_ARRAY(s_GL_EXT_multisampled_render_to_texture),			s_GL_EXT_multisampled_render_to_texture				},
   1970 	{ "GL_EXT_robustness",									DE_LENGTH_OF_ARRAY(s_GL_EXT_robustness),								s_GL_EXT_robustness									},
   1971 	{ "GL_EXT_texture_storage",								DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_storage),							s_GL_EXT_texture_storage							},
   1972 	{ "GL_IMG_multisampled_render_to_texture",				DE_LENGTH_OF_ARRAY(s_GL_IMG_multisampled_render_to_texture),			s_GL_IMG_multisampled_render_to_texture				},
   1973 	{ "GL_IMG_user_clip_plane",								DE_LENGTH_OF_ARRAY(s_GL_IMG_user_clip_plane),							s_GL_IMG_user_clip_plane							},
   1974 	{ "GL_NV_fence",										DE_LENGTH_OF_ARRAY(s_GL_NV_fence),										s_GL_NV_fence										},
   1975 	{ "GL_OES_EGL_image",									DE_LENGTH_OF_ARRAY(s_GL_OES_EGL_image),									s_GL_OES_EGL_image									},
   1976 	{ "GL_OES_blend_equation_separate",						DE_LENGTH_OF_ARRAY(s_GL_OES_blend_equation_separate),					s_GL_OES_blend_equation_separate					},
   1977 	{ "GL_OES_blend_func_separate",							DE_LENGTH_OF_ARRAY(s_GL_OES_blend_func_separate),						s_GL_OES_blend_func_separate						},
   1978 	{ "GL_OES_blend_subtract",								DE_LENGTH_OF_ARRAY(s_GL_OES_blend_subtract),							s_GL_OES_blend_subtract								},
   1979 	{ "GL_OES_draw_texture",								DE_LENGTH_OF_ARRAY(s_GL_OES_draw_texture),								s_GL_OES_draw_texture								},
   1980 	{ "GL_OES_fixed_point",									DE_LENGTH_OF_ARRAY(s_GL_OES_fixed_point),								s_GL_OES_fixed_point								},
   1981 	{ "GL_OES_framebuffer_object",							DE_LENGTH_OF_ARRAY(s_GL_OES_framebuffer_object),						s_GL_OES_framebuffer_object							},
   1982 	{ "GL_OES_mapbuffer",									DE_LENGTH_OF_ARRAY(s_GL_OES_mapbuffer),									s_GL_OES_mapbuffer									},
   1983 	{ "GL_OES_matrix_palette",								DE_LENGTH_OF_ARRAY(s_GL_OES_matrix_palette),							s_GL_OES_matrix_palette								},
   1984 	{ "GL_OES_point_size_array",							DE_LENGTH_OF_ARRAY(s_GL_OES_point_size_array),							s_GL_OES_point_size_array							},
   1985 	{ "GL_OES_query_matrix",								DE_LENGTH_OF_ARRAY(s_GL_OES_query_matrix),								s_GL_OES_query_matrix								},
   1986 	{ "GL_OES_single_precision",							DE_LENGTH_OF_ARRAY(s_GL_OES_single_precision),							s_GL_OES_single_precision							},
   1987 	{ "GL_OES_texture_cube_map",							DE_LENGTH_OF_ARRAY(s_GL_OES_texture_cube_map),							s_GL_OES_texture_cube_map							},
   1988 	{ "GL_OES_vertex_array_object",							DE_LENGTH_OF_ARRAY(s_GL_OES_vertex_array_object),						s_GL_OES_vertex_array_object						},
   1989 	{ "GL_QCOM_driver_control",								DE_LENGTH_OF_ARRAY(s_GL_QCOM_driver_control),							s_GL_QCOM_driver_control							},
   1990 	{ "GL_QCOM_extended_get",								DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get),								s_GL_QCOM_extended_get								},
   1991 	{ "GL_QCOM_extended_get2",								DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get2),							s_GL_QCOM_extended_get2								},
   1992 	{ "GL_QCOM_tiled_rendering",							DE_LENGTH_OF_ARRAY(s_GL_QCOM_tiled_rendering),							s_GL_QCOM_tiled_rendering							},
   1993 	{ "GL_AMD_framebuffer_multisample_advanced",			DE_LENGTH_OF_ARRAY(s_GL_AMD_framebuffer_multisample_advanced),			s_GL_AMD_framebuffer_multisample_advanced			},
   1994 	{ "GL_AMD_performance_monitor",							DE_LENGTH_OF_ARRAY(s_GL_AMD_performance_monitor),						s_GL_AMD_performance_monitor						},
   1995 	{ "GL_ANGLE_framebuffer_blit",							DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_blit),						s_GL_ANGLE_framebuffer_blit							},
   1996 	{ "GL_ANGLE_framebuffer_multisample",					DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_multisample),					s_GL_ANGLE_framebuffer_multisample					},
   1997 	{ "GL_ANGLE_instanced_arrays",							DE_LENGTH_OF_ARRAY(s_GL_ANGLE_instanced_arrays),						s_GL_ANGLE_instanced_arrays							},
   1998 	{ "GL_ANGLE_translated_shader_source",					DE_LENGTH_OF_ARRAY(s_GL_ANGLE_translated_shader_source),				s_GL_ANGLE_translated_shader_source					},
   1999 	{ "GL_EXT_EGL_image_storage",							DE_LENGTH_OF_ARRAY(s_GL_EXT_EGL_image_storage),							s_GL_EXT_EGL_image_storage							},
   2000 	{ "GL_EXT_base_instance",								DE_LENGTH_OF_ARRAY(s_GL_EXT_base_instance),								s_GL_EXT_base_instance								},
   2001 	{ "GL_EXT_blend_func_extended",							DE_LENGTH_OF_ARRAY(s_GL_EXT_blend_func_extended),						s_GL_EXT_blend_func_extended						},
   2002 	{ "GL_EXT_buffer_storage",								DE_LENGTH_OF_ARRAY(s_GL_EXT_buffer_storage),							s_GL_EXT_buffer_storage								},
   2003 	{ "GL_EXT_clear_texture",								DE_LENGTH_OF_ARRAY(s_GL_EXT_clear_texture),								s_GL_EXT_clear_texture								},
   2004 	{ "GL_EXT_clip_control",								DE_LENGTH_OF_ARRAY(s_GL_EXT_clip_control),								s_GL_EXT_clip_control								},
   2005 	{ "GL_EXT_copy_image",									DE_LENGTH_OF_ARRAY(s_GL_EXT_copy_image),								s_GL_EXT_copy_image									},
   2006 	{ "GL_EXT_debug_label",									DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_label),								s_GL_EXT_debug_label								},
   2007 	{ "GL_EXT_disjoint_timer_query",						DE_LENGTH_OF_ARRAY(s_GL_EXT_disjoint_timer_query),						s_GL_EXT_disjoint_timer_query						},
   2008 	{ "GL_EXT_draw_buffers",								DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers),								s_GL_EXT_draw_buffers								},
   2009 	{ "GL_EXT_draw_buffers_indexed",						DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers_indexed),						s_GL_EXT_draw_buffers_indexed						},
   2010 	{ "GL_EXT_draw_elements_base_vertex",					DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_elements_base_vertex),					s_GL_EXT_draw_elements_base_vertex					},
   2011 	{ "GL_EXT_draw_instanced",								DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_instanced),							s_GL_EXT_draw_instanced								},
   2012 	{ "GL_EXT_draw_transform_feedback",						DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_transform_feedback),					s_GL_EXT_draw_transform_feedback					},
   2013 	{ "GL_EXT_external_buffer",								DE_LENGTH_OF_ARRAY(s_GL_EXT_external_buffer),							s_GL_EXT_external_buffer							},
   2014 	{ "GL_EXT_geometry_shader",								DE_LENGTH_OF_ARRAY(s_GL_EXT_geometry_shader),							s_GL_EXT_geometry_shader							},
   2015 	{ "GL_EXT_instanced_arrays",							DE_LENGTH_OF_ARRAY(s_GL_EXT_instanced_arrays),							s_GL_EXT_instanced_arrays							},
   2016 	{ "GL_EXT_memory_object",								DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object),								s_GL_EXT_memory_object								},
   2017 	{ "GL_EXT_memory_object_fd",							DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_fd),							s_GL_EXT_memory_object_fd							},
   2018 	{ "GL_EXT_memory_object_win32",							DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_win32),						s_GL_EXT_memory_object_win32						},
   2019 	{ "GL_EXT_multi_draw_indirect",							DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_indirect),						s_GL_EXT_multi_draw_indirect						},
   2020 	{ "GL_EXT_multiview_draw_buffers",						DE_LENGTH_OF_ARRAY(s_GL_EXT_multiview_draw_buffers),					s_GL_EXT_multiview_draw_buffers						},
   2021 	{ "GL_EXT_occlusion_query_boolean",						DE_LENGTH_OF_ARRAY(s_GL_EXT_occlusion_query_boolean),					s_GL_EXT_occlusion_query_boolean					},
   2022 	{ "GL_EXT_polygon_offset_clamp",						DE_LENGTH_OF_ARRAY(s_GL_EXT_polygon_offset_clamp),						s_GL_EXT_polygon_offset_clamp						},
   2023 	{ "GL_EXT_primitive_bounding_box",						DE_LENGTH_OF_ARRAY(s_GL_EXT_primitive_bounding_box),					s_GL_EXT_primitive_bounding_box						},
   2024 	{ "GL_EXT_raster_multisample",							DE_LENGTH_OF_ARRAY(s_GL_EXT_raster_multisample),						s_GL_EXT_raster_multisample							},
   2025 	{ "GL_EXT_semaphore",									DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore),									s_GL_EXT_semaphore									},
   2026 	{ "GL_EXT_semaphore_fd",								DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_fd),								s_GL_EXT_semaphore_fd								},
   2027 	{ "GL_EXT_semaphore_win32",								DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_win32),							s_GL_EXT_semaphore_win32							},
   2028 	{ "GL_EXT_separate_shader_objects",						DE_LENGTH_OF_ARRAY(s_GL_EXT_separate_shader_objects),					s_GL_EXT_separate_shader_objects					},
   2029 	{ "GL_EXT_shader_framebuffer_fetch_non_coherent",		DE_LENGTH_OF_ARRAY(s_GL_EXT_shader_framebuffer_fetch_non_coherent),		s_GL_EXT_shader_framebuffer_fetch_non_coherent		},
   2030 	{ "GL_EXT_shader_pixel_local_storage2",					DE_LENGTH_OF_ARRAY(s_GL_EXT_shader_pixel_local_storage2),				s_GL_EXT_shader_pixel_local_storage2				},
   2031 	{ "GL_EXT_sparse_texture",								DE_LENGTH_OF_ARRAY(s_GL_EXT_sparse_texture),							s_GL_EXT_sparse_texture								},
   2032 	{ "GL_EXT_tessellation_shader",							DE_LENGTH_OF_ARRAY(s_GL_EXT_tessellation_shader),						s_GL_EXT_tessellation_shader						},
   2033 	{ "GL_EXT_texture_border_clamp",						DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_border_clamp),						s_GL_EXT_texture_border_clamp						},
   2034 	{ "GL_EXT_texture_buffer",								DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_buffer),							s_GL_EXT_texture_buffer								},
   2035 	{ "GL_EXT_texture_view",								DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_view),								s_GL_EXT_texture_view								},
   2036 	{ "GL_EXT_win32_keyed_mutex",							DE_LENGTH_OF_ARRAY(s_GL_EXT_win32_keyed_mutex),							s_GL_EXT_win32_keyed_mutex							},
   2037 	{ "GL_EXT_window_rectangles",							DE_LENGTH_OF_ARRAY(s_GL_EXT_window_rectangles),							s_GL_EXT_window_rectangles							},
   2038 	{ "GL_IMG_bindless_texture",							DE_LENGTH_OF_ARRAY(s_GL_IMG_bindless_texture),							s_GL_IMG_bindless_texture							},
   2039 	{ "GL_IMG_framebuffer_downsample",						DE_LENGTH_OF_ARRAY(s_GL_IMG_framebuffer_downsample),					s_GL_IMG_framebuffer_downsample						},
   2040 	{ "GL_INTEL_framebuffer_CMAA",							DE_LENGTH_OF_ARRAY(s_GL_INTEL_framebuffer_CMAA),						s_GL_INTEL_framebuffer_CMAA							},
   2041 	{ "GL_INTEL_performance_query",							DE_LENGTH_OF_ARRAY(s_GL_INTEL_performance_query),						s_GL_INTEL_performance_query						},
   2042 	{ "GL_KHR_blend_equation_advanced",						DE_LENGTH_OF_ARRAY(s_GL_KHR_blend_equation_advanced),					s_GL_KHR_blend_equation_advanced					},
   2043 	{ "GL_KHR_debug",										DE_LENGTH_OF_ARRAY(s_GL_KHR_debug),										s_GL_KHR_debug										},
   2044 	{ "GL_KHR_robustness",									DE_LENGTH_OF_ARRAY(s_GL_KHR_robustness),								s_GL_KHR_robustness									},
   2045 	{ "GL_KHR_parallel_shader_compile",						DE_LENGTH_OF_ARRAY(s_GL_KHR_parallel_shader_compile),					s_GL_KHR_parallel_shader_compile					},
   2046 	{ "GL_NV_bindless_texture",								DE_LENGTH_OF_ARRAY(s_GL_NV_bindless_texture),							s_GL_NV_bindless_texture							},
   2047 	{ "GL_NV_blend_equation_advanced",						DE_LENGTH_OF_ARRAY(s_GL_NV_blend_equation_advanced),					s_GL_NV_blend_equation_advanced						},
   2048 	{ "GL_NV_clip_space_w_scaling",							DE_LENGTH_OF_ARRAY(s_GL_NV_clip_space_w_scaling),						s_GL_NV_clip_space_w_scaling						},
   2049 	{ "GL_NV_conditional_render",							DE_LENGTH_OF_ARRAY(s_GL_NV_conditional_render),							s_GL_NV_conditional_render							},
   2050 	{ "GL_NV_conservative_raster",							DE_LENGTH_OF_ARRAY(s_GL_NV_conservative_raster),						s_GL_NV_conservative_raster							},
   2051 	{ "GL_NV_conservative_raster_pre_snap_triangles",		DE_LENGTH_OF_ARRAY(s_GL_NV_conservative_raster_pre_snap_triangles),		s_GL_NV_conservative_raster_pre_snap_triangles		},
   2052 	{ "GL_NV_copy_buffer",									DE_LENGTH_OF_ARRAY(s_GL_NV_copy_buffer),								s_GL_NV_copy_buffer									},
   2053 	{ "GL_NV_coverage_sample",								DE_LENGTH_OF_ARRAY(s_GL_NV_coverage_sample),							s_GL_NV_coverage_sample								},
   2054 	{ "GL_NV_draw_buffers",									DE_LENGTH_OF_ARRAY(s_GL_NV_draw_buffers),								s_GL_NV_draw_buffers								},
   2055 	{ "GL_NV_draw_instanced",								DE_LENGTH_OF_ARRAY(s_GL_NV_draw_instanced),								s_GL_NV_draw_instanced								},
   2056 	{ "GL_NV_draw_vulkan_image",							DE_LENGTH_OF_ARRAY(s_GL_NV_draw_vulkan_image),							s_GL_NV_draw_vulkan_image							},
   2057 	{ "GL_NV_fragment_coverage_to_color",					DE_LENGTH_OF_ARRAY(s_GL_NV_fragment_coverage_to_color),					s_GL_NV_fragment_coverage_to_color					},
   2058 	{ "GL_NV_framebuffer_blit",								DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_blit),							s_GL_NV_framebuffer_blit							},
   2059 	{ "GL_NV_framebuffer_mixed_samples",					DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_mixed_samples),					s_GL_NV_framebuffer_mixed_samples					},
   2060 	{ "GL_NV_framebuffer_multisample",						DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_multisample),					s_GL_NV_framebuffer_multisample						},
   2061 	{ "GL_NV_gpu_shader5",									DE_LENGTH_OF_ARRAY(s_GL_NV_gpu_shader5),								s_GL_NV_gpu_shader5									},
   2062 	{ "GL_NV_instanced_arrays",								DE_LENGTH_OF_ARRAY(s_GL_NV_instanced_arrays),							s_GL_NV_instanced_arrays							},
   2063 	{ "GL_NV_internalformat_sample_query",					DE_LENGTH_OF_ARRAY(s_GL_NV_internalformat_sample_query),				s_GL_NV_internalformat_sample_query					},
   2064 	{ "GL_NV_memory_attachment",							DE_LENGTH_OF_ARRAY(s_GL_NV_memory_attachment),							s_GL_NV_memory_attachment							},
   2065 	{ "GL_NV_non_square_matrices",							DE_LENGTH_OF_ARRAY(s_GL_NV_non_square_matrices),						s_GL_NV_non_square_matrices							},
   2066 	{ "GL_NV_path_rendering",								DE_LENGTH_OF_ARRAY(s_GL_NV_path_rendering),								s_GL_NV_path_rendering								},
   2067 	{ "GL_NV_polygon_mode",									DE_LENGTH_OF_ARRAY(s_GL_NV_polygon_mode),								s_GL_NV_polygon_mode								},
   2068 	{ "GL_NV_read_buffer",									DE_LENGTH_OF_ARRAY(s_GL_NV_read_buffer),								s_GL_NV_read_buffer									},
   2069 	{ "GL_NV_sample_locations",								DE_LENGTH_OF_ARRAY(s_GL_NV_sample_locations),							s_GL_NV_sample_locations							},
   2070 	{ "GL_NV_scissor_exclusive",							DE_LENGTH_OF_ARRAY(s_GL_NV_scissor_exclusive),							s_GL_NV_scissor_exclusive							},
   2071 	{ "GL_NV_viewport_array",								DE_LENGTH_OF_ARRAY(s_GL_NV_viewport_array),								s_GL_NV_viewport_array								},
   2072 	{ "GL_NV_viewport_swizzle",								DE_LENGTH_OF_ARRAY(s_GL_NV_viewport_swizzle),							s_GL_NV_viewport_swizzle							},
   2073 	{ "GL_OES_copy_image",									DE_LENGTH_OF_ARRAY(s_GL_OES_copy_image),								s_GL_OES_copy_image									},
   2074 	{ "GL_OES_draw_buffers_indexed",						DE_LENGTH_OF_ARRAY(s_GL_OES_draw_buffers_indexed),						s_GL_OES_draw_buffers_indexed						},
   2075 	{ "GL_OES_draw_elements_base_vertex",					DE_LENGTH_OF_ARRAY(s_GL_OES_draw_elements_base_vertex),					s_GL_OES_draw_elements_base_vertex					},
   2076 	{ "GL_OES_geometry_shader",								DE_LENGTH_OF_ARRAY(s_GL_OES_geometry_shader),							s_GL_OES_geometry_shader							},
   2077 	{ "GL_OES_get_program_binary",							DE_LENGTH_OF_ARRAY(s_GL_OES_get_program_binary),						s_GL_OES_get_program_binary							},
   2078 	{ "GL_OES_primitive_bounding_box",						DE_LENGTH_OF_ARRAY(s_GL_OES_primitive_bounding_box),					s_GL_OES_primitive_bounding_box						},
   2079 	{ "GL_OES_sample_shading",								DE_LENGTH_OF_ARRAY(s_GL_OES_sample_shading),							s_GL_OES_sample_shading								},
   2080 	{ "GL_OES_tessellation_shader",							DE_LENGTH_OF_ARRAY(s_GL_OES_tessellation_shader),						s_GL_OES_tessellation_shader						},
   2081 	{ "GL_OES_texture_3D",									DE_LENGTH_OF_ARRAY(s_GL_OES_texture_3D),								s_GL_OES_texture_3D									},
   2082 	{ "GL_OES_texture_border_clamp",						DE_LENGTH_OF_ARRAY(s_GL_OES_texture_border_clamp),						s_GL_OES_texture_border_clamp						},
   2083 	{ "GL_OES_texture_buffer",								DE_LENGTH_OF_ARRAY(s_GL_OES_texture_buffer),							s_GL_OES_texture_buffer								},
   2084 	{ "GL_OES_texture_storage_multisample_2d_array",		DE_LENGTH_OF_ARRAY(s_GL_OES_texture_storage_multisample_2d_array),		s_GL_OES_texture_storage_multisample_2d_array		},
   2085 	{ "GL_OES_texture_view",								DE_LENGTH_OF_ARRAY(s_GL_OES_texture_view),								s_GL_OES_texture_view								},
   2086 	{ "GL_OES_viewport_array",								DE_LENGTH_OF_ARRAY(s_GL_OES_viewport_array),							s_GL_OES_viewport_array								},
   2087 	{ "GL_OVR_multiview",									DE_LENGTH_OF_ARRAY(s_GL_OVR_multiview),									s_GL_OVR_multiview									},
   2088 	{ "GL_OVR_multiview_multisampled_render_to_texture",	DE_LENGTH_OF_ARRAY(s_GL_OVR_multiview_multisampled_render_to_texture),	s_GL_OVR_multiview_multisampled_render_to_texture	},
   2089 	{ "GL_QCOM_alpha_test",									DE_LENGTH_OF_ARRAY(s_GL_QCOM_alpha_test),								s_GL_QCOM_alpha_test								},
   2090 	{ "GL_QCOM_framebuffer_foveated",						DE_LENGTH_OF_ARRAY(s_GL_QCOM_framebuffer_foveated),						s_GL_QCOM_framebuffer_foveated						},
   2091 	{ "GL_QCOM_texture_foveated",							DE_LENGTH_OF_ARRAY(s_GL_QCOM_texture_foveated),							s_GL_QCOM_texture_foveated							},
   2092 	{ "GL_QCOM_shader_framebuffer_fetch_noncoherent",		DE_LENGTH_OF_ARRAY(s_GL_QCOM_shader_framebuffer_fetch_noncoherent),		s_GL_QCOM_shader_framebuffer_fetch_noncoherent		},
   2093 };
   2094